前端学习方法

模块一
前端知识架构:构建你的前端知识体系

    两种高效的前端学习方法
    建立前端体系架构
    明确前端工程师的发展方向

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

微信公众号:前端历劫之路