2017年给前端开发者的建议
在如今前端技术快速迭代的环境下,我们花了很多时间尝试最新的技术框架,并针对这些框架进行各种争论。我并不是说这样不对,不过,或许我们应该减慢点追逐新技术的速度,反过来多关注一些更为基本的东西。因为这样反而更能改善我们代码质量,而且,能帮助我们更快地学习新技术。
这篇文章是我在2017来临之际写的,综合了我个人经验和对未来的一些憧憬,分享给大家。
学会写高可读代码
我们大多数的时间并不是在写新的代码,而是在维护已有的代码。这也意味着,我们更多时间需要去阅读代码,换个角度,我们也需要不断优化自己的代码,为了让以后维护的程序员更易懂,提高代码的可维护性。
我向大家推荐以下三本经典的书:
编写可读代码的艺术 The Art of Readable Code这本书关注编码本身,并不局限于某一种语言,列举了大量 C++, Python, Java 和 Javascript代码,涵盖了主流的静态语言和动态语言。
代码整洁之道 Clean Code: A Handbook of Agile Software Craftsmanship 这本书应该是世界闻名,就不需多介绍了。
代码大全 Code Complete 新手和高手的区别。
深入学习 Javascript
现在几乎每周都有一种新的更优秀的 Javasctipt 框架发布,所以我们很容易花最多的时间去学习框架而非语言本身。
如果你正在使用一种框架,但你并不理解框架背后的运行原理,那么停下来,开始学习语言本身直到你理解框架背后是如何运行的。
下面有全球很不错的 Javasctipt 学习资源:
你可以从 Kyle Simpson 的系列文章开始学习 Javascript。《You don't know javascript》,GitHub地址:https://github.com/getify/You-Dont-Know-JSEric Elliott (javascript 大神)列举了《 JavaScript topics to learn in 2017》。发表在 Medium 的一篇文章,得到 2.5k 点赞,感兴趣的小伙伴可以留言,我以后翻译给大家。(地址:https://medium.com/javascript-scene/top-javascript-frameworks-topics-to-learn-in-2017-700a397b711)Henrique Alves (独立前端开发者)的文章 《things you should know before using React》,地址:http://alves.im/blog/before-dive-into-react.htmlMike Pennisi 的文章 《JavaScript Developers: Watch Your Language!》,地址:https://bocoup.com/weblog/javascript-developers-watch-your-language学习函数式编程很多年以来,我们一直希望在 Javascript 里出现 类 的概念。现在,这类概念已经具备了,但我们却不再想要使用它了。
因为我们现在只想要函数式编程!它(JSX)甚至能用来编写HTML。
这里有一些学习资料:
Kyle Simpson 编写的 《Functional-Light JavaScript》,一本关于 Javascript 的函数式编程开源电子书。GitHub地址:https://github.com/getify/Functional-Light-JS (1997个star)Frisby 教授的 《Mostly adequate guide to Functional Programming》开源电子书。GitHub地址:https://github.com/MostlyAdequate/mostly-adequate-guide (10230个star)。还有他的免费 Javascript 学习课程,质量很高:https://egghead.io/courses/professor-frisby-introduces-composable-functional-javascript学习Design基础知识作为前端开发者,我们比团队里其他人,甚至是设计师,都更加接近用户。如果设计师需要为页面里每一个像素担心,那可能就是你的工作不太到位了。
这里有一些给开发者看的设计入门知识:
David Kadavy(亚马逊作者Top 20)的书籍《黑客与设计:剖析设计之美的秘密》及他的免费课程 Design for Hackers http://designforhackers.com/Tracy Osborn(妹子一枚)在 Youtube 上的一个视频《Design for Non-Designers》,地址:https://www.youtube.com/watch?v=ZbrzdMaumNk&feature=youtu.beNathan Barry 的 《Design for Web Application》,地址:http://nathanbarry.com/webapps/Alan Cooper(交互设计之父)创作的《交互设计之路 The Inmates Are Running the Asylum: Why High Tech Products Drive Us Crazy and How to Restore the Sanity》
一些关于利用动画来改善交互的文章。《How to Use Animation to Improve UX》地址:http://babich.biz/how-to-use-animation-to-improve-ux/ 《Transitional Interfaces》(3.9k 赞)地址:https://medium.com/@pasql/transitional-interfaces-926eb80d64e3学会与人协作有些人来学习编程是因为我们相比与人交流,更愿意和机器沟通。但不幸的是,事实并非如此。
我们很少会完全隔离式工作,我们需要和其他开发者、设计师和产品经理沟通,有时甚至还需要和用户沟通。这很困难。但这对于你理解自己所开发的产品是非常重要的,因为这正是我们所创造价值的根本。
这里有一些沟通协作的学习资料:
John Sonmez 的《软技能:代码之外的生存指南 Soft skills: The software developer’s life manual》
Robert C. Martin 的《程序员的职业素养 The Clean Coder: A Code of Conduct for Professional Programmers》
Jim Camp 的《Start with No: The Negotiating Tools that the Pros Don’t Want You to Know》
提高你的写作表达
我们与同学或同事大部分的沟通方式都是文字形式的:任务描述,git comment,微信聊天,邮件,博客等等。
想象一下我们每天要花多少时间来阅读和理解,如果我们可以以一种更加准确清晰的方式来写作表达,那将节省所有人非常多的时间。
这里有一些知识用来提高写作表达能力:
William Zinsser 写作的 《On Writing Well》豆瓣 9.1分William Strunk 和 E. B. White 共同编写的 《The Elements of Style》豆瓣 9.1分学习经典计算机理论如今的前端开发者不再仅仅是调一下动画或UI了。现在的前端比以前复杂太多了,尤其是 Javascript 里不断在迭代出新。
但是,这也意味着我们更应该去学习这几十年形成的计算机的基础理论,以不变应万变。
下面是我强烈推荐的两本书:
成都web前端开发网 http://web.ixueyun.com/ 收集整理itarg1a 我也想听大家的建议!谢 好的代码对优化很有帮助
页:
[1]