php发展

首页 » 常识 » 问答 » 鹅厂程序员教你搭建编程学习架构干货
TUhjnbcbe - 2021/1/3 17:52:00
杭州治疗白癜风效果最好的医院 http://pf.39.net/bdfyy/zjft/160116/4759412.html
我相信大多数学习编程的同学都有着对大公司的憧憬。技术、声望、薪资、福利,这些都足以成为吸引你进入大厂的理由。但是,如何进入大厂呢?对于很多同学来说,通往大厂的道路并不明朗,不知道是否有希望,也不知道怎么努力,感觉遥不可及。其实,我身边有很多成功拿到大厂offer的同学,他们并不都是大家想象中的名校硕士、竞赛金牌、开源大佬、编程神童。相反,我看到了很多背景一般却凭实力冲进大厂的同学,而且他们在工作中的表现非常出彩!通过和这些同学的交流,我发现他们在编程学习和求职方法上有一些共性,再结合自己的真实经历,我总结了一套较通用的编程学习和求职架构。无论你现在处于编程学习的哪个阶段,又或者只是对编程有兴趣,下面的内容都会对你有一定帮助。让你看到更清晰的未来,并为之而努力。首先,要明确一点,编程学习没有捷径!必须明晰目标、拉长战线、掌握技巧、持续学习、做足准备,才能立于不败之地。下图是我总结的编程学习架构:编程学习架构如图,我将编程学习分为7个部分。为什么叫做“学习架构”而不是“学习路线”呢?因为在编程学习中,有些事情不是严格按照顺序去做,而是在我们整个学习过程中都要长期坚持的。下面详细解释一下这套编程学习架构的7个部分。1.初入茅庐,海纳百川刚开始学习编程时,难免会感到迷茫,如果你初入大学,会发现身边大多数的同学选择加入了学生会、各种社团来丰富校园生活,而不是一门心思去学习。其实这个阶段,并不需要太过关心和考虑以后找工作的问题,要做的事情就是学好大学的一些通识课程,保证成绩不能太差。不要提成绩无用论,除了学校之外,高的绩点也是简历的牌面,如果能取得前几名的好成绩,是绝对的加分项!对于计算机专业的同学,刚开始并不会接触到很深入的知识,也很少有机会去开发一个完整的作品。基本都是学习C、C++等编程语言,因为涉及和能够学习到的知识相对丰富。但是,想要学好编程,课本上的知识是远远不够的,一定要自学!自学什么呢?其实刚开始的时候大家并不知道自己擅长什么、真正喜欢什么、以后想做什么、从事哪方面的工作,因此,可以“海纳百川”,多了解和尝试各种编程语言、技术框架、专业知识等。比如在课堂教的编程语言之外,去自主学习下Web网站开发或者Python。怎么自主学习呢?看书?过去几十年,我们的学习几乎一直依赖书本。但是如今,互联网上资源非常丰富,为我们自学编程提供了很大的方便。可以选择看纸质书、电子书,但是一定不要直接去啃那些很复杂的理论书籍,而是选择一些轻松有趣、相对简单、案例丰富的书籍。除了看书之外,可以选择W3Cschool、实验楼、FreeCodeCamp等在线学习网站,边学边敲代码练习。还可以去B站上搜索一些视频教程,可能要比啃书学习要轻松得多!W3Cschool在线编程入门实战但是,无论你选择何种方式去学习,一定要边学边练习,不必局限于一些习题或书中的代码片段,可以试着发挥自己的创意,去编写一些简单的网站或者实用的小工具,相信你会收获成就感,逐渐对编程产生兴趣。这个阶段,除非你有非常明确的学习方向,否则没有必要对某一门技术过于执着,毕竟计算机领域很多技术和知识点是相通的,前期先多学习一些简单易懂的知识,会让编程学习轻松有趣一些。2.兴趣使然,纵横交贯上一个阶段重在培养我们对编程学习的兴趣,当你学习了一些编程知识和编程语言后,你已经对很多零碎的知识产生了印象,后面学习新知识也会比之前更加容易和迅速。这个阶段是你编程能力开始突飞猛进的时候。由于时间和精力有限,你要做的是从你已经学到的知识库中挑选出相对感兴趣的部分,比如某一门编程语言(比如Java),或者是某一个领域(比如NLP)。然后对这部分知识进行相对深层次的学习,可以去读一本经典的书籍,了解这门技术的特性,甚至是阅读相关源码。在重点深入学习一门技术的同时,还需要继续保持开放,接触更多的新知识,而不是深陷其中、无法自拔。计算机的很多知识是相互关联的,如果多学习一些不同方面的知识,我们更容易将那些零碎的知识点串联成网,从而开拓思维,得到更大的收益。但是,算法、数据结构、计算机网络等知识点比较特殊,即使没有兴趣,也要认真地去学习!因为它们可以培养你的思维,提升你的程序设计能力,对于程序员来说太重要了。毕竟大多编程语言都是相通的,语言只是工具,思想才是武器。听起来可能比较抽象,但在实际面试和工作中往往这些零碎的小知识会发挥巨大的作用。比如,面试互联网大公司时,基本每一轮面试都会考察几道算法题目;面试后台开发岗位,也一定会问到计算机网络、操作系统的知识。在工作中,我们也经常会用到一些算法的思想来解决问题,比如滑动窗口、时间轮、布隆过滤器等。这个阶段,我推荐大家选择主流的技术和框架进行深层次的学习,比如Java语言的SSM和SpringBoot框架。主流的技术教程多、文档多、遇到问题更容易解决,而且通常容易上手,能做出一些个人作品,增加兴趣和成就感。3.有的放矢,十年磨剑如果你已经对某个编程语言或知识领域产生了浓厚的兴趣,或者已经能够得心应手地开发个人作品,那么恭喜你进入到下一个阶段。本阶段要做的是确定自己的职业方向,做到有的放矢。为什么没有在一开始就让大家明确目标呢?**因为确定目标的时机很重要,过早或过晚都不好。**很多人在上大学前可能对某一个职业特别憧憬,整天嚷嚷着自己一定要成为自己想成为的人,但是直到你真正接触这个职业或者其相关的知识一段时间,你可能才意识到自己并不适合。比如我小时候想当律师,整天看CCTV12,也啃了几本法律书籍,但是后来自己记性差了,而且发现自己对编程的兴趣更大,因此也放弃了之前的目标。庆幸的是,我不是在大学期间才放弃律师这个职业,没有耽误到我学习编程知识。大学时间短暂,没有太多的时间给我们去迷茫和折返。既然已经有了喜欢的编程技术和领域,确定职业目标就相对简单了。每个人有不同的选择,建议先从自己的兴趣出发,选择和自己的兴趣和所学技能相匹配的岗位。同时,也要考虑到目前的市场需求,最好看一些数据和调研,不要选择冷门职业。还有一些其他纳入考虑的点,比如薪资、工作时长、地点等等。确定职业后,还可以进一步地去选择公司。建议给自己定一个最高的目标,比如进入互联网大厂,要相信自己,只有饥饿的狼才能吃到美味的饭。确定好职业目标后,就要根据职业,堆积打磨自己的技术栈。这是一个十年磨剑的过程,重在坚持。首先要确认你的目标岗位需要哪些相关的技术,推荐直接到大互联网公司的招聘
1
查看完整版本: 鹅厂程序员教你搭建编程学习架构干货