Skip to content

Latest commit

 

History

History
103 lines (85 loc) · 8.39 KB

front end summary.md

File metadata and controls

103 lines (85 loc) · 8.39 KB

三年前端路:分享我的工作经验与学习经历

前言

今天写下这篇文章,是为了对这三年的工作和学习做一个总结。

本文的所有观点均出自作者这三年经历所得,如有不足或错误之处,敬请谅解。

工作经验

  • 通常情况下,技术和薪资成正比。
  • 技术好的人比较自信,脾气也比一般人暴躁。
  • 不要裸辞,找好下家再辞职。
  • 涨薪基本靠跳槽。
  • 同事有可能会成为朋友,但最终都是过客。
  • 戒掉王者,忍一时之痛,换终生荣耀。
  • 熬夜基本不可能戒掉。
  • 都是出来打工的,没人欠着你,不要耍性子。
  • 要有职业规划,没有就去想,直到想出来为止。
  • 善用 fan qiang 工具,好处多多。
  • 面试造航母,工作拧螺丝不是玩笑话。
  • 要学会心平气和的跟产品沟通,尤其是不懂技术的产品,虽然很难。
  • 越秃越强只是个梗。
  • 每天写业务页面不能让你变强,顶多算是比较熟练的流水线工人,要变强还得靠业余时间。
  • 喜欢学习的程序员很少,得过且过才是大多数。
  • 工作不忙时,尽量利用这段时间学习;技术越好,任务完成得越快,摸鱼的时间就越多。
  • 少管闲事,有时间多学习。
  • 少关注八卦新闻,多学习。
  • 别拍马屁,有那功夫多学习。
  • 时刻反省自己,今天有没有学习。

学习经历

由于我是高中毕业,并且 28 岁才开始学习编程,所以起点比一般人差很多,完全是零基础,需要学习的知识也特别多。

在找工作前,我花了五个月时间自学编程。

第一个月学的 C 语言,结果发现 C 语言不好找工作。第二个月转学 python,学了一个月发现招聘岗位很少,又放弃了。第三个月,痛定思痛,我决定先去网上搜一下什么语言好找工作再做决定,最后选了前端做为学习的方向。

接下来前端学习了三个月,HTML 和 CSS 是在 w3school 上学的,JavsSciprt 则是看的 《JavaScript 高级程序设计第三版》。在学习的同时,还做了百度前端技术学院 2016 的任务来巩固和提升技术。三个月后开始找工作,2017 年 2 月找到了第一份工作,终于转行成功。

接下来的三年学习经历可分为前端和计算机理论知识两个方面来讲。

前端

关于前端学习,我的宗旨是:

  1. 基础知识为主,库、框架为辅。
  2. 理论与实践结合,学习更高效。
  3. 时常写文章总结,将学到的知识消化了再写出来(费曼学习法)。

库、框架都是工具,基础打好了,学习第三方工具才能事半功倍。

基础知识(JavaScript、CSS、HTML)

在这三年里,我看了大量的前端书籍,具体如下:

在看书的同时,我还做了百度前端技术学院 2017 年的任务。功夫不负有心人,看书和做练习让我的技术水平得到了极大的提升,以至于后面对 Vue 源码的学习起到了很大的作用。

库、框架

关于第三方库的学习,我只对 JQuery 和 Vue 进行了深入学习,其他的库都是看文档按需使用。 深入学习 JQuery 的成果:写了两个组件。 深入学习 Vue 的成果:

  1. 写了一个 Vue 动态表单组件,发布到 NPM上。
  2. 模仿 Vue1.0 版本写了一个 MiniVue,这让我对 Vue 的理解达到了源码级别。
  3. 写了几篇关于 Vue 的文章。

nodejs

学习 nodejs 的时间比较少,主要是工作用不上。成果是写了一个个人博客 node-blog,涉及到服务器和数据库知识。

计算机理论知识

计算机理论知识决定了一个程序员的天花板(在国内还得加上英语)。

数据结构与算法

算法看的是 《算法 4th》这本书,课后习题没做,刷了不到一百道 leetcode 的题。

编译原理、计算机原理

由于编译原理和计算机原理是看的同一本书《计算机系统要素》,所以就放一起说了。

这是本神书,内容通俗易懂,涉及计算机原理、编译原理、部分操作系统知识,每一章后面都有对应的练习,需要你写代码完成。

如果完成了本书所有的项目,你将会获得以下成就:

  • 构建出一台计算机(在模拟器上运行)
  • 实现一门语言和相应的语言标准库
  • 实现一个简单的编译器

而且,这本书的门槛非常低,只要你能熟练运用一门编程语言即可。我已经把这本书所有项目都做完了,答案放在 github 上,有兴趣可以看看。

操作系统

操作系统看了《操作系统导论》以及《深入理解计算机系统》(这本书更像是计算机导论),并且做了MIT6.828 的项目写了一个简单的操作系统内核。

其他

这是没有做或做了一部分练习的。

总结

计算机理论知识值得每个程序员都去认真学习。不过,持续学习并不是一件容易的事,需要你有坚定的目标和强大的自驱力。如果不想学习,可以看电影玩游戏放松一下,注重劳逸结合,不过也要警惕玩游戏上瘾,这都是血的教训总结出来的。