前端学习方法
模块一
前端知识架构:构建你的前端知识体系
两种高效的前端学习方法
建立前端体系架构
明确前端工程师的发展方向
JavaScript语言:掌握JavaScript的核心功能和设计思路
学习JavaScript语言知识
建立对JavaScript语言的文法、语义、运行时的整体认知
掌握JavaScript的核心功能和设计思路
JavaScript运行时
JavaScript词法
JavaScript语法
JavaScript对象机制
脚本与模块
函数
类
语法与声明
表达式
标识符与直接量
HTML、CSS语言:掌握HTML应用,理解CSS语言、排版、绘制和动画
理解HTML语言
掌握基本语法和主要标签语义
掌握HTML语言继承自SGML和XML的各种机制
掌握运用HTML开发网页所需要的知识
学习CSS语法和基本机制,以及重要的CSS属性的使用
掌握用CSS完成网页视觉和交互效果的技能
HTML语义:学习如何用 HTML 说话
HTML 与 SGML:DTD、entity 等来自 SGML 的设施
HTML 与 XML:namespace、标签封闭
HTML 的扩展:SVG、MathML、Aria
CSS 语法
CSS 机制:Media Query、Viewport、其他 at-rule、选择器、伪类、伪元素
排版:盒模型、正常流与文本、Flex、Grid
绘制:颜色、背景图片、投影、圆角、滤镜、Counter
CSS 动画
浏览器工作原理和 API:动手实现一个简易浏览器,梳理 Web 核心 API 及背后机制
用 JavaScript 实现一个简化版的模拟浏览器
理解浏览器的整个工作过程
学习 DOM 和 CSSOM API 等浏览器的核心 API
掌握在浏览器上开发交互效果的基本能力
HTTP 协议的解析
HTML 语法与词法
实现 CSS 计算
实现排版
实现渲染和绘制
基础 DOM 树操作
浏览器的事件机制:冒泡与捕获
CSSOM、CSS 的对象模型以及与显示相关的对象模型
其他 API
编程与算法训练:12 个案例提升你的编程内功
训练与语言和运行环境无关的基础编程实例
训练与 JavaScript 和 Web 相关的编程实例
解决具体问题,提升编程能力
基础:TicTacToe /井字棋(递归)
基础:寻路问题(搜索)
基础:出现最多的 50 个字符串(哈希树/排序结构)
基础:判断点击区域(计算几何)
基础:括号匹配(栈)
基础:wildcard(贪心)
应用:Promise 与异步编程
应用:正则表达式与文本处理
应用:Proxy 与双向绑定
应用:使用 Range 实现 DOM 精确操作
应用:使用 CSSOM 实现视觉交互
应用:解析一个四则运算的表达式
组件化:掌握组件化核心开发思想和工程实践
理解组件化的概念、应用场景和基本思路
了解组件化的历史与现状
提升对组件化这一工程手段的认知
设计一套组件的基础设施,揭秘 React/Vue 风格的组件原理。
组件化基础知识
实现一个轮播组件
抽象出手势库
抽象出动画库
为组件添加 JSX 语法
其他组件
轮播组件的继续改造:生命周期
轮播组件的继续改造:状态、属性、特征
轮播组件的继续改造:事件机制
新组件 Tab:容器型组件
新组件 List:数据机制
One more thing:Vue 风格的 SFC
组件体系的设计
工具链:从零设计并实现一套符合大厂要求的工具链
完整实现一套可以用于实际开发的工具链模型
理解工具链的各个方面
从零开始设计一套包含初始化、构建、调试、测试的工具链,学习大厂如何通过工具链保证代码风格、环境统一,保障基本质量。
整体理解一个工具链的设计
目录结构与初始化工具
设计并实现一个构建工具
设计并实现一个调试工具
设计并实现一个单元测试工具
发布与持续集成:通过发布和持续集成保证前端团队代码质量
实现一个持续集成和前端发布体系
学习如何用持续集成保证前端代码质量
从零开始搭建一套极简的线上服务和与之搭配的发布系统,基于这个发布系统完成前端的持续集成体系,学习如何用持续集成保证前端代码质量。
实现一个线上 Web 服务
实现一个发布系统
持续集成:如何使用 Git Hook
持续集成:如何使用 Lint 工具
持续集成:如何使用无头浏览器
持续集成:如何实现 DOM 树的检查
作者:Vam的金豆之路
主要领域:前端开发
我的微信:maomin9761
微信公众号:前端历劫之路