图片来源: http://cdn.skilledup.com/wp-content/uploads/2014/11/life-of-front-end-developer-infographic-Secondary.jpg
到底如何才能成长为前端开发者?这很难说。现如今,你仍然不能指望在大学毕业的时候拿到一个关于前端工程的学位。此外,我几乎没听说或见过一个前端开发者需要遭受一种过时的计算机科学学位或图形设计学位的折磨,才能专业地完成 HTML、CSS 和 JavaScript 编码工作。在我看来,如今大部分在前端圈工作的人,通常像是自学成才或来自非认证机构、课程及训练营。
如果你打算成为一个前端开发者,我将尽量让你跟随以下概括好的步骤(第二部分,"学习前端开发",深入了解更多学习资源的细节)。
- 请大致了解一下 WEB 的工作方式,并确认自己了解以下概念是什么,会在哪里出现:域名、DNS、URL、HTTP、网络、浏览器、服务器/托管、JSON、数据 API、HTML、CSS、DOM 和 JavaScript。你可以不求甚解,只需要大致理解各部分是如何协作的。请关注前端架构的主目录(high level outlines)。从编写简单的 web 页面和简要地学习前端应用(又叫 SPA)开始。
- 学习 HTML。
- 学习 CSS。
- 学习 JavaScript。
- 学习 DOM。
- 学习 JSON 和数据 API。
- 学习用户交互设计(也就是 UI 模式、UI 设计、用户习惯设计和可用性)的基础。
- 学习命令行界面/命令行。
- 学习软件工程的实践(也就是应用设计/架构、模版、Git、测试、监控、自动化、代码质量、开发方法论)。
- 使用你觉得有用的东西(也就是 Webpack、React 和 Redux)配置和定制自己的工具箱。
- 学习 Node.js。
对学习的简短建议:在学习工具和框架前应当先学习更底层的实现技术,学 DOM 而非 jQuery。学 CSS 而非 SASS。学 HTML 而非 HAML。学 JavaScript 而非 CoffeeScript。学 JavaScript ES6 模版而非 Handlebars。学 UI 模式而非使用 Bootstrap。
刚起步的时候,你应当对那些把 WEB 开发的复杂性掩盖掉的工具和框架保持警惕。高级工具和框架的不当运用会给人一种使用了高级技能的表象,而掩盖了这样的事实:开发者对于基础和底层概念所知寥寥。
本书的剩余部分会为你指出可能的资源,供你学习前端开发和实践开发所需的工具。在此过程中,我们的前提假设是你不仅学习新知识,而且学以致用并研究工具的使用方法。有人说实践出真知,还有人说学以致用,而我的建议是,请结合以上两个观点,找到合适自己的工作方式并践行它。但毫无疑问的是,要结合起来!因此别止步于看,要实践起来!学习,实践,学习,实践,学习,实践。要不断重复两者,以应对飞速变化的东西。这就是要学习基础知识而非高级工具的原因,学习基础知识十分重要。
近来出现了很多非认证的,收费昂贵的前端编码学院和训练营。这些成为前端开发者的途径,往往是由老师主导,由官方讲师制作的课程,它们遵循更传统的学习方式(也就是教学大纲、测试、小测验、项目、团队项目、分数等等)。如果你正在考虑是否要报一个收费昂贵的课程大纲,请牢记你是在互联网上!你可以在网上免费获得所有需要学习的东西。然而,如果你需要一个老师,要求这个老师能教你如何获取并学习到真正免费的知识,而且还要对你的学习负责,那你可能就要考虑一下系统化的课程了。否则,你学习任何专业技术所需的网络资源,每月收费几百块的视频资源会员,以及使你对知识怀有强烈的渴望,这些实际上都不是免费的。
如果你打算现在开始,那么请通过以下自学资源选择性地学习:
- 2016/2017 必须知道的 WEB 开发技术 [观看]
- 前端编程新手指南 [阅读 & 观看][免费]
- 如何成为前端开发者 [观看][收费]
- 前端课程 [阅读]
- freeCodeCamp [互动]
- 听说你想成为前端工程师 [观看]
- 启动 WEB 前端开发生涯 [观看][收费]
- WEB 前端开发:入门 [观看][收费]
- HTML、CSS、JS 快速入门 [观看][收费]
- WEB 开发介绍 [观看][收费]
- WEB 前端开发基础 [观看][收费]
- 学习前端工程 [观看][收费]
- 2015 前端[JS]开发者的基准 [阅读]
- 学习 WEB 前端开发 [观看][收费]
- 精通前端开发 [观看][收费]
- WEB 前端开发者微学位 [观看][收费]