2017年的前端我们应该学什么
前端圈快速发展的今天,我们习惯于去尝试最新的技术并在互联网上讨论它们的优劣。我并不是说我们不应该这么做,我只是觉得我们是不是应该慢下来,看看那些不常变的东西:它们能够很好的提高我们工作的效率以及价值,还能同时帮助我们更好的理解这些新的工具。
这篇文章主要是结合本人经验提出的对新的一年的愿景。正如果我愿意分享它一样,我也希望能听到你的愿景。
1、学习如何写阅读性更好的代码
我们的大部分工作并不是写新的代码,而是维护已经存在的代码。这意味着比起写代码,你读代码所花费的时间更多。所以,你需要不断的优化你的代码,不是为了编译器,而是为了方便下一个代码维护者。
我推荐阅读下面这些神奇的书籍: 1. 编写可读代码的艺术 2. 代码整洁之道 3. 代码大全(第2版)
2、更深入的学习Java
当每周都有更好的前端框架面世,我们常常花费大量的时间去学习框架而不是语言本身。如果你正在使用一个框架但是不明白它的原理,暂停一下,去学习语言本身吧,直到理解你所使用的工具。
Kyle Simpson写的你所不知道的Java是一个很好的开始,回复 你不懂js 查看
Eric Elliott整理了一系列2017年值得学习的Jav部分。
Henrique Alves整理的一系列的React使用须知(实际上对任何框架都适用)。
Mike Pennisi所写的Java Developers: Watch Your Language!,帮助我们理解新的ECMA特性发布之前经历的TC-39过程。
3、学习函数式编程
过去很多年,我们一直想要Java实现class。现在终于有了,但我们已经不太愿意去用它了:我们只想要function!我们甚至写HTML都用function(JSX)。
函数式Java-Kyle Simpson
Frisby教授的函数式编程电子书以及他的免费课程
4、学一些简单的设计
作为一个前端工程师,我们比团队里的其他任何人更接近用户,甚至比设计师还要接近。如果设计师不得不验证页面的每一个像素的话,你肯定做错一些事情了。
Tracy Osborn所做的面向非设计师的设计学演讲
Nathan Barry写的网页应用的设计这篇文章
Jason Santa Maria所著的网页排版这本书
UI动画的一些文章:怎么使用动画来提高UX
5、学与人合作
有些人喜欢编程是因为他们更习惯于计算机交流而不是与人交流--不幸的是,这种想法是错误的。
我们很少单独工作:我们不得不与其他开发者,设计师,经理,有时候甚至是用户进行交流。这很难,但是如果你真的想理解你在做些什么,与人交流很重要。并且,这也是我们工作的价值所在。
John Sonmez所著的软技能:代码之外的生存指南
Robert C. Martin所著的代码整洁之道:程序员的职业素养
Jim Camp所著的Start with No: The Negotiating Tools that the Pros Don't Want You to Know
6、学会如何写文字描述
文字描述例如任务描述、评论、代码注释、git comments、聊天信息、电子邮件、推特以及博客等在我们与同事以及他人的交流中占据很大一部分。
想象一下人们花费了多少时间再阅读以及理解上面。如果你能够通过写更加清晰、精准的文字来减少阅读以及理解所花费的时间,这个世界将更加美好。
William Zinsser所著的英文写作指南
William Strunk与E. B. White合著的英语写作手册:风格的要素
欧文的写作准则
7、学习经典的计算机科学精华
前端已经不再是做一个简单的下拉框就好了。它已经变得比以往任何时候都要复杂,并且随着我们所需要解决问题的复杂度的提升,也出现了臭名昭著的“Java疲劳”。
这个,意味着是时候学习经过几十年沉淀的计算机领域的精华知识了。在这儿,我特别推荐以下:
coursera的课程Learn To Think Like A Computer Scientist
David Heinemeier Hansson所著的五本对我最有意义的编程书