一
以前开发者只要掌握 HTML、CSS、JavaScript 三驾马车就能胜任一份前端的工作了。而现在除了普通的编码以外,还要考虑如何性能优化,如何跨端、跨平台实现功能,尤其是 AI、5G 技术的来临,都在加快前端技术的更新,也在逼促开发者要不停的学习,不能的接受新的技术标准。
二
因此,“学什么”“怎么学”其实是我们要着重解决的问题。所以,今天给你梳理一下前端知识框架,帮你把知识点重新做个遍历,查缺补漏的学习更轻松。
这份知识框架,也是极客时间《重学前端》专栏里的一些核心内容,十分珍贵。
我们先来看什么叫做知识架构?
我们可以把它理解为知识的“目录”或者索引,它能够帮助我们把零散的知识组织起来,也能够帮助我们发现一些知识上的盲区。
本文包含了JavaScript、CSS和HTML以及浏览器的实现原理和API,这三个模块涵盖了一个前端工程师所需要掌握的全部知识。
在JavaScript的模块中,首先我们可以把语言按照文法、语义和运行时来拆分,这符合编程语言的一般规律:用一定的词法和语法,表达一定语义,从而操作运行时。
运行时可以分为数据结构和算法部分——数据结构包含类型和实例(内置对象),算法是执行过程。执行过程应按照从最顶层的事件循环和微任务,到函数、再到语句级的执行。
语法和语义基本是一一对应关系,在JavaScript标准中有一份语法定义表,建议随时拿出来看一看。
在HTML的部分,我们按照功能和语言来划分它的知识,HTML的功能主要由标签来承担,所以首先要把标签做一些分类。图中元素后面的分类,便是我们按照承担的不同功能,把标签分成的几个类别。
除了标签之外,你还应该把HTML当作一门语言来了解下。较基础的HTML的语法和几个重要的语言机制:实体、命名空间,你一定要掌握。
三
CSS部分,可以按照语言和功能划分。
语言部分,@rule、选择器、单位是三个要关注的部分。
功能部分,可以重点关注布局(正常流和弹性布局)、绘制(图形和文字)以及交互类。
浏览器的实现原理,是我们深入理解 API 的基础。
从一般的浏览器设计出发,按照解析、构建DOM树、计算CSS、渲染、合成和绘制的流程来学习浏览器的工作原理。
在API部分,可以从W3C零散的标准中挑选几个大块的API来详细讲解,主要有:事件、DOM、CSSOM几个部分,他们分别覆盖了交互、语义和可见效果,这是我们工作中用到的主要内容。
看完文章还有福利拿,往下看
小伙伴可以在公号【grain先森】后台回复【190311】获取完整版JS知识框架图。