前言
为什么要写本书
目前,前端工程师、移动端工程师的进阶之路尤为崎岖,很多前端工程师、移动端工程师不知道后续的技术发展方向,也有一些工程师没有办法在技术深度上更进一步。那么是否有一条技术拓广之路呢?答案当然是有的,这就是“大前端工程师”,或者叫“泛前端工程师”“端工程师”。有些公司还设有大前端负责人岗位,这个岗位的本质就是引导、管理前端和移动端工程师完成具体的业务或技术任务。但是大多数工程师都是一条技术栈做到底,很少会有移动端、前端技术都掌握的人才。本书旨在解决让一名前端或者移动端工程师快速入门成为大前端工程师的问题。
本书特色
本书涵盖前端、移动端的常规开发知识,并借用对比的方法帮助读者快速掌握另一端的知识。通过已知领域对比学习未知领域的知识也是大部分人最容易接受的学习方法。
在接触陌生知识或者事物的时候,我总是期望在记忆中找寻类似的东西来尝试理解,比如尝试一个新美食的时候,会觉得这个味道像我之前吃过的某种美食。再比如,我个人在使用一个新的电子产品的时候,就会在脑海里回忆之前自己是否用过类似的电子产品。
本书也会着重介绍移动端、前端开发的不同点,力求让读者理解大前端开发的差异。书中多个前端与移动端案例的对标,也可以作为读者日后进行大前端开发的参考文档。
读者对象
本书为大前端工程师的入门读物,前端、移动端工程师在阅读本书时,可以略过自己擅长的技术的相关内容。
本书主要面向以下三类读者。
第一类,完全没有基础但想要入门大前端的读者。本书通过“保姆式”教学,确保这类读者在对前端和移动端没有任何认知的情况下能够快速入门,培养学习兴趣,避免入门劝退。
第二类,工作一两年的前端或者移动端工程师,想要学习大前端技能,虽有一些技术基础但感觉完全无从下手。本书能够带领这类读者以非常平滑的方式进入学习,通过一个项目把常规大前端所要掌握的双端技术结合起来对比学习,达到事半功倍的效果。
第三类,有一端的技术但又想在自己不擅长的另一端有所突破的读者。本书可以帮助这类读者快速入门并建立信心。
阅读本书之前,期望你具备一定的前端、后端开发经验,至少有接口级别的后端服务经验。因为在第9章的数据请求环节,需要自己开发后端接口。
勘误与支持
我仅讲述了自己学习大前端技术的思路,如果有读者探索出了更好的思路,欢迎与我交流。你的建议将有助于我改进本书,并最终帮助到更多的人。如果你允许,我也期望在本书致谢中加上你的名字。我的电子邮箱是978563552@qq.com。
实例代码说明
本书的实例代码是以GitHub上的开源项目BigFont为基础的。BigFont项目遵循MIT协议开源,读者可以从GitHub平台上直接下载BigFont项目(https://github.com/qq978563552/BigFont),任何人都可以直接使用它或将它改造成自己想要的项目。建议对照开源项目代码阅读本书。
致谢
首先,要感谢本书策划编辑高婧雅,是她夜以继日地给我鼓励,帮我进行校对、勘误,助我完成本书。
此外要感谢给我写推荐语的几位专家,他们从读者定位、内容难易程度角度给了我非常多的建议。
同时要感谢我的第一本书的读者和我的学生们,是他们让我有勇气写完这本书,让我更加明确自己要写一本什么样的书。
感谢猿辅导的小伙伴们,这本书的大部分内容是我在猿辅导任职时完成的。田宝明、陈铁男、李松犁、强哥、烁爷、阳明、铭茗以及直播课堂全体小伙伴的帮助,让我在工作上游刃有余,从而有精力利用周末的时间创作此书。
感谢字节跳动的韩庆新工程师和贝壳找房的邹琴工程师,他们从我写第一本书开始就帮我做校对和试读工作。他们利用休息时间从读者角度出发,从头到尾通读了本书,帮我找出了一些读者关注但是我没有注意到的问题。
感谢王怀爽女士,她从测试工程师的角度帮我找出这本书对测试人员有价值的内容,让本书得以更完善。
最后要感谢我的家人,是他们在背后默默支持我。我因写作牺牲了很多陪伴他们的时间。