大家一样不可能从如今这个点上看到未来;只有回头看时,才会发现它们之间的关系。因此你必须相信,那些点点滴滴,会在你将来的生命里,以某种方式串联起来。前端
我是一位16年毕业211 CS专业的本科生,一直把本身定位为工程师,用技术解决问题。我以前不多写文章,看着本身的页面PV从零到上亿,技术栈从 JQuery 到 Vue 到 React,以为是时候回顾一下这工做的两年半的成果和规划下新年的学习路线,分享个人收获与感悟。程序员
16年毕业7月后入职了第一家公司,技术栈是 JQuery + PHP ,经历了一次比较艰难的转型,由于大学的项目经历主要是 Java ,对 JS 的认知只有能够作表单验证,对 PHP 一窍不通,只能从零开始学习前端知识,也很是感谢当时的团队对我很是宽容,给了我时间一点一点的进行学习,不得不说 PHP 是世界上最好的语言(手动狗头),我看了不到一周就能开始给本身写API了。面试
16年末我就本身负责了整个产品的前端部分,而且使用了 Vue 对旧的页面进行重构,刚开始使用 Vue 还有没用 Webpack 和 Babel ,想一想本身当时 惟一的老师也就是博客和 GitHub 了,可是这段时间写了很是多的代码,由于 PHP 技术不精,使用 JS 写了不少复杂的逻辑,甚至用 JS 刷了 LeetCode。算法
17年初开始将工做以外学习到的新技术带入项目中,将项目的技术栈改进为 Vue + ES6 + Webpack 的 SPA,虽然开发人员只有我一个,可是仍是很是享受将技术栈一步步更新的过程,而且让我意识到 实践是学习新技术的最佳方式。编程
17年下半年我开始了个人面试之旅,平均一周两个,当时真的是经历了一段很是痛苦的日子,对本身项目经历的不自信,对本身技术水平的质疑,可是历来没有中止学习,最终也收获了不少 Offer 并选择入职了一个很是满意的团队,主要业务是电商的 ToC 页面,从小做坊进入了专业的前端团队,并开始将技术栈向 React 迁移,整个下半年的主基调也是不停地作业务,看别人的代码,不断地学习。设计模式
18年年初,做为一个刚刚入门 React 的新人,上线了第一个使用切仅 React 的项目,这个项目虽然简单可是很是重要,由于我使用了 Context 和 Events.js 作了相似 Redux 和 Redux-Saga 的功能,这使得我以后能够快速理解 Redux 和 Redux-Saga 并上手使用,因此 理解工具的设计理念 是很是重要的。网络
18年6月,我完成了我人生中第一个PV破亿的项目。项目作起来就像是对以前技术的一次大考,方方面面全都涉及,访问量大了以后对页面的兼容,适配,容错的要求都很高,这里我就不讲的很是细了,但愿你们能够理解,总之这很是像是经历了一次没有准备的高考,却发现本身能够从容应对。项目以后我阅读了不少关于组件化的文章,看了一些组件化较好的实践,对业务场景进行了场景的抽象,组件的功能结构进行了重写,让我在以后的项目中少加了不少班,也在作一些规范化组件进行输出。经历过这样的项目最大的收获是 自信和能跳出业务进行思考的能力。数据结构
从一开始工做的从零起步步步维艰,到现在厚积薄发独当一面,三年里有了一个长足的进步,收获的不仅是技术的提高,还有信心的创建与眼界的拓展。经历了这些总归是有一些本身的感悟。框架
当我刚毕业时以为工做经验好像没什么用处,无非就是项目作得多而已,我和工做几年的程序员差不了多少,如今的我以为这种想法很蠢,由于项目作得多了真的能够积累到不少知识。当我作项目中遇到问题,我并不只仅是 Google 一下解决方案,我会多看一些相关方面资料去理解问题,同时也会附带地 看一些延伸的知识并进行积累,学习的知识也不限于前端,感兴趣的均可以了解,并作好笔记,工做后真的经过这样的方式积累了不少有用的知识并拓展了眼界。数据结构和算法
做为科班出身的前端,在大学中一直不是很理解大学在学什么,等工做了以后才发现这些知识能够帮助我去理解程序的运行以及如何设计个人代码。好比我很容易就能理解 JS 中 0.1 + 0.2!= 0.3,这是一道计算机组成原理的填空题,感受我本身当年临时抱佛脚 61 分飘过的科目如今竟然能排上用场。数据结构和算法很是有用,能够帮助我更好地将业务场景抽象为解决问题的代码。编译原理,计算机网络和设计模式等知识也渗透在工做中,帮到我不少。
我一直把本身定位为工程师,我坚持用合适的工具,恰当的方法解决,并对 有能力对问题挺行抽象,设计实现一类问题的解决方案。语言,框架,库就是我手里的工具,首先要作的就是会用工具并理解工具的设计思想,以学习曲线陡峭的 React 为例,我以为当时我最大的阻碍是将我设计代码的思路迁移到 React 的函数式编程上来,一开始也是一直半解只是会用,以为什么都很别扭,可是当作了几个项目以后,在一点点打开了函数式大门以后,就以为 React 真的是太棒了,而且火烧眉毛的开始尝试用 HOC,Props Render 进行逻辑抽象,重构以前的代码并尝试作一些业务中的轮子。我并不以为我是科学家,能够去研究出一些很前沿的技术,造一些很酷的新框架出来,我更愿意去深刻业务,利用这些先进的思想去为业务中的问题开发优秀的解决方案。
列个List吧,但愿今年能够把立的Flag实现:
文章的开头是乔布斯的演讲中关于因果的一句,我对此深信不疑。从小学学绘画,到高中感兴趣的 VB ,到大学的 CS 专业,这一切串起来,让我走上了离视觉最近的前端道路。我也相信尽人事,听天命,只要我不停下来,最会有所收获。
你必须相信一些东西——你的勇气、宿命、生活、因缘,随便什么——由于相信这些点滴可以一路链接会给你带来循从本觉的自信,它使你远离平凡,变得不同凡响。