作者:Artem Sapegin
编译:胡子大哈

翻译原文:2017年前端工程师应该学习什么
英文原文:2017 is the year that front-end developers should go back and master the basics

转载请注明出处,保留原文链接以及作者信息



在我们所生活的这个快节奏的世界里,人们都倾向于把自己的时间用在进行一些新的创造上,然后再互联网上讨论它们。

我并不是说不该这样做,而是我认为我们应该适当的慢一点,把注意力也放在一些不会改变世界那么大的事情上。这不仅会提高我们的工作效率、提升我们传递的价值,而且也会使我们学习那些新工具、新方法更快。

这篇文章结合了我的的经验和我的新年祝福,也非常希望能够得到读者的建议和反馈。

学习如何写可读性强的代码

我们大部分的工作并不在于写新的代码,而是在于维护已经存在的代码。这意味着你会更经常地读代码而不是写代码,因此,你需要为了下一个阅读你代码开发者优化你的代码,而不是为了编译器优化你的代码。

我推荐下面三本Amazing的书,按这个顺序来,从短到长。

  • Dustin Boswell 的 《编写可读代码的艺术》,英文原版在这里 The Art of Readable Code。如果对印刷要求不高,这里也有 影印版。
  • Robert C. Martin 的 《代码整洁之道》,英文原版 Clean Code: A Handbook of Agile Software Craftsmanship
  • Steve McConnell 的 《代码大全》,英文原版 Code Complete: A Practical Handbook of Software Construction

深入学习 JavaScript

当有一个新的 JavaScript 框架,而这个框架又比以往的任何框架都优秀的时候,我们很容易陷入一种状态——学习该框架,而不是学习语言本身。如果你正在使用一个框架,但是不理解他是如何工作的,那么请停下来,开始学习这门语言,知道你理解了你所使用的这个框架的工作原理

  • 作为起始读物,Kyle Simpson 的系列图书《你不知道的JavaScript》是一个很好的选择,你可以购买,也可以免费 在线阅读。
  • Eric Elliott在 2017 JavaScript的学习主题 中给出了一个长长的学习列表。
  • Henrique Alves 列出了一些在 学习React之前应该知道的事情 (实际上是任何框架)。
  • Mike Pennisi 的博文 JavaScript Developers: Watch Your Language。——理解在新 ECMAScript 特征中的 TC-39 过程。

学习函数式编程

多年以来,我们希望在 JavaScript 中使用类。现在终于可以了,但是我们再也不想用它们了。我们要的是函数!甚至在写 HTML 的时候,也使用函数(JSX)。

  • Kyle Simpson 的 Functional-Light JavaScript。
  • Frisby 教授的函数式编程电子书 《JavaScript 函数式编程》,英文版:Mostly adequate guide 。还有他的 免费在线视频教程。

学习设计基础知识

作为前端开发人员,我们在团队中是离用户最近的,甚至比设计师还近。如果你需要设计师来检查你放到屏幕上的每个像素,那么一定是你出了什么问题。

  • David Kadavy 的 《黑客与设计:剖析设计之美的秘密》,英文原版在这里 Design for Hackers: Reverse Engineering Beauty》,还有一套 免费教程。
  • Tracy Osborn 的视频教程 Design for Non-Designers
  • Nathan Barry 的 Design of Web Applications。
  • Jason Santa Maria 的 On Web Typography,亚马逊上也可以买到,链接在这里。
  • Alan Cooper 的 The Inmates Are Running the Asylum: Why High Tech Products Drive Us Crazy and How to Restore the Sanity
  • 这里还有几篇关于 UI 动画的文章: How to Use Animation to Improve UX,Transitional Interfaces。

学习如何和同事一起工作

我们之中的一些人选择编程是相比于同人打交道,更喜欢同电脑打交道。但是不幸的是,这并不是工作之道。

我们并不是在隔离的环境下工作,通常要和其他开发者、设计师、项目经理沟通,甚至有时候还需要和用户沟通,这显得非常困难。但是如果你想要知道你在做什么事情以及为什么做这件事情,沟通是非常重要的。而你所做的事情,正是你的价值体现所在。

  • John Sonmez 的《软技能:代码之外的生存指南》,英文原版在 这里。
  • 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 提交,聊天信息,邮件,博客,微博等等。

想象一下人们需要花多少时间在阅读和理解这些信息上。如果每个人能通过自己清晰简洁的表达来节省他人理解的时间,那工作环境和效率将会得到很大的改善。

  • William Zinsser 的 On Writing Well: The Classic Guide to Writing Nonfiction
  • William Strunk and E. B. White 的《风格的要素》,英文原版在 这里。
  • Orwell 的 Rules on writing。
  • 俄语版很赞的 Glavred课程。

学习传统计算机科学的智慧

前端开发不仅仅是做酷炫的动画下拉菜单,它比以前更加复杂。臭名昭著的“JavaScript 疲劳”一部分就源于我们要解决的问题复杂性的增加。

这也意味着,作为前端工程师也是时候学习这些经过了几十年发展演变的非前端知识了。同时,这也是我希望从你们那里得到一些建议的地方,你们觉得前端工程师,从以往的计算机科学中应该学习哪些知识呢?

这里列出我自己的一些建议资源:

  • Coursera 上的 像一个计算机科学家一样思考问题。
  • DHH的 五本对我影响最大的编程书。

你想推荐给我什么呢?2017年,你将要学习什么呢?希望你也能分享你的计划出来。


点击《2017年前端工程师应该学习什么》阅读原文。

2017年前端工程师应该学习什么相关推荐

  1. 前端工程师需要学习ps 吗_转行学习web前端开发,需要哪些工具和需要学习什么?...

    今天我们来谈谈Web和前端开发过程中需要学习什么?前端开发需要使用什么开发工具?也简单介绍前端开发前景和薪水. 前端工程师的主要职责: 前端工程师在不同的公司有不同的功能,但性质相似. 1.网站设计与 ...

  2. 前端工程师需要学习ps 吗_前端人员一定要掌握的PS技巧

    一.PS与前端知多少 一般我们会认为PS是用来修改图片的,这些工作是美工人员做的事不是前端人员做的,其实这样想你就错了,因为在前端人员也是要学会一些简单的关于PS的技巧的,这样就不会应为一点点小小的需 ...

  3. 前端工程师需要学习ps 吗_转行web前端,新手需要学习什么?

    7天免费试听,0基础入门,高薪就业,推荐就业,小班面对面授课 一.前端工程师的主要职责 前端工程师在不同的公司工作内容不同,但工作性质大体相似: 1.网站设计与网页界面开发 2.设计.开发.数据 3. ...

  4. web前端工程师进阶学习线路图

    目前前端市场的人才结构以初级web前端工程师居多,因此由入行到进阶的成长曲线已经成为大多数前端工程师的发展目标.在提升阶段对于知识和技能掌握,我们需要从梳理好的知识架构中选择更深一层次的技术进行学习, ...

  5. 我的职业是前端工程师:学习前端只需要三个月【框架篇】

    将 package.json 中的 Ionic 版本改为 2.0.0 的时候,我就思考一个问题.这个该死的问题是--我到底要用哪个框架继续工作下去. 刚开始学习前端的时候,SPA(单页面应用)还没有现 ...

  6. 前端工程师需要学习ps 吗_前端开发工程师需要掌握的6大PS技能

    前端开发工程师(简称前端)的上游是UI设计师,大部分的UI设计师都是用photoshop(简称PS)来设计产品效果图的,而前端会使用这个效果图来制作页面,为了能很好地与UI设计师对接以及制作页面,前端 ...

  7. 前端工程师ps学习笔记

    此文档记录个人学习ps过程中的笔记. 个人作为前端,学习ps主要是为了更好地衔接设计师,在设计师临时缺席时快速解决问题. 主要解决快速切图和简单抠图.换色的问题.小图标png转svg问题. 1. 入门 ...

  8. 前端工程师直线学习路径

    想自学前端?却不知道学习路径.报个班吧,又怕被坑.一张学习前端路径是带你少走N条弯路.最近两年,前端技术和三大框架地位趋于稳定,推荐这个前端开发学习路径. 新手自学前端的五大阶段. 第一阶段 想成为一 ...

  9. 前端工程师需要学习ps 吗_【百度前端工程师面试】前端开发技术要会PS-看准网...

    百度,全球最大的中文搜索引擎.最大的中文网站.2000年1月创立于北京中关村. 1999年底,身在美国硅谷的李彦宏看到了中国互联网及中文搜索引擎服务的巨大发展潜力,抱着技术改变世界的梦想,他毅然辞掉硅 ...

最新文章

  1. Dubbo——面试问题集(1~3)
  2. 宝塔php安装那个合_使用宝塔面板安装nextcloud | 启用本地存储 | 安装smbclient
  3. 【空间分析】0 基本空间分析工具
  4. linux软件包管理rpm
  5. 软件测试-禅道下载及安装-测试人员必会工具
  6. android word文件编辑器,docx文档编辑
  7. 教你用快捷键 以管理员身份运行cmd
  8. 用md5值识别相似图片 python
  9. 修改gitlab 去掉双重认证 Two-Factor Authentication
  10. linux下的timerfd机制
  11. c语言中if函数作用,c语言if函数的使用方法
  12. 逆变器LCL滤波器参数设计(一)
  13. 淘宝开网店靠谱吗?为什么没有销量?那是因为你犯了以下几点
  14. 电大专科《计算机网络》机考题库,电大专科计算机网络机考网考纸考题库及答案.doc...
  15. 【C#】WPF实现经典纸牌游戏,适合新手入门
  16. Microsoft Visual Studio + Qt插件编程出现错误error MSB4184问题
  17. ava基础知识02-
  18. iOS程序启动原理---iOS-Apple苹果官方文档翻译
  19. 计算线段与平面的交点
  20. 高效能人士七个习惯读书笔记

热门文章

  1. ai突破性技术_人工智能还没有突破
  2. CSS中实现文字两端对齐的方法,登陆注册界面经常用到
  3. Android第三方集成之一键分享ShareSDK的使用eclipse篇 #CSDN博文精选# #IT# #第三方集成# #安卓#
  4. 如何在 Mac 和虚拟机上安装 macOS Big Sur、Monterey 和 Ventura
  5. 会议平板红外和电容触控区别,哪个好?
  6. Elasticsearch(022):es常见的字段映射类型之地理形状类型(geo_shape、多边的复杂的地址形状)
  7. pl/sql编程----触发器
  8. MTD系统架构和yaffs2使用、Nandflash驱动设计
  9. Problem A: 农夫果园
  10. 【认知计算】认知风险管理