Web前端学习大纲

  • 前端基础篇
  • HTML
  • CSS
  • CSS基本语法
  • CSS层叠与继承机制
  • BFC
  • 常见的布局方式(响应式与自适应)
  • CSS动画
  • 常见的预编译语言(Less、sass/scss、postcss)
  • OOCSS
  • reset技术
  • 常见的CSS框架
  • Bootstrap
  • Uikit
  • Iview
  • 参考网站:
  • JavaScript
  • 数据类型与内存中的存储
  • 常见的算术运算符与逻辑运算符
  • 函数的定义方式
  • 流程控制
  • BOM与DOM操作
  • Browser对象
  • DOM对象
  • 事件冒泡、捕获、代理/委托
  • 作用域与作用域链
  • 变量提升、闭包与垃圾回收机制
  • 原型与原型链
  • 继承实现
  • 指针修改方式
  • web存储方案及区别(cookie、sessionStorage、localStorage)
  • 常见的ES6语法(http://es6.ruanyifeng.com/)
  • 变量声明、解构
  • 新增的数据类型与数据结构
  • 模块声明与导入
  • class
  • 前端规范篇
  • JS命名规范
  • CSS命名规范
  • HTML标准
  • 代码质量控制
  • Git源码管理与提交规范
  • git、svn提交流程
  • 常见的分支管理与冲突解决
  • git commit message规范(Conventional Commits)
  • Gerrit提交规范(详情参考我司的前端Gerrit使用教程)
  • HTTP知识
  • Ajax与常见的请求方式
  • 同源策略与跨域解决方案
  • 同源策略
  • 预检请求的方式和作用
  • 常见的跨域解决方案
  • jsonp
  • CORS
  • postMessage
  • 三次握手
  • 返回状态码区分和意义
  • 单工通信与双工通信
  • 单工通信:http请求、SSE
  • 双工通信:Websocket
  • axios
  • 浏览器知识
  • 常见的浏览器内核
  • 浏览器缓存策略与解决方案、Service Worker
  • 浏览器的渲染原理
  • CSRF与其防御方案
  • 流程图与思维导图
  • 主流框架
  • Vue+Vue-router+Vuex+I18n+Nuxt
  • React+Redux+Next
  • Angular
  • SPA相关知识点
  • MVVM原理
  • 单向数据流
  • 双向数据绑定
  • VDOM原理
  • Diff算法
  • 生命周期
  • 路由模式与实现原理
  • 状态管理
  • 静态类型检查语言
  • 模块化
  • 常见的模块化规范
  • CMD
  • AMD
  • UMD
  • ES6模块化
  • 模块化实现
  • requirejs
  • seajs
  • 组件化
  • 组件的定义方式
  • 组件扩展
  • 组件之间的通信
  • 工程化
  • entry/output
  • loader
  • plugins
  • model
  • 模块
  • 面向对象知识
  • 面向对象编程原则SOLID
  • S(Single)单一原则
  • O(Open Closed)开放封闭
  • L(Liskov Subsitution)里氏替换
  • I(Interface Segregation)接口分离
  • D(Dependency Inversion)依赖倒置
  • 面向对象三大特征
  • 封装
  • 继承
  • 多态
  • 测试
  • Unit
  • E2E
  • NightWatch
  • Web安全攻防
  • 小程序/公众号、 PWA、混合开发
  • 小程序/公众号
  • PWA(借助Vue开发的PWA)
  • 混合开发(Hybrid App)
  • Cordova
  • Ionic
  • CI/CD
  • 什么是CI/CD?
  • CI/CD的实现
  • 源码管理gitlab/github等
  • 构建与编译,反馈Jenkins
  • 质量管理 SonarQube
  • 参考:
  • 数据可视化
  • 微前端
  • Nodejs
  • 数据结构
  • 二叉树与最小二叉树
  • 链表、栈、队列、图
  • 数据库知识
  • 线性数据库与非线性数据库之间的区别
  • 常见的数据库
  • MySQL
  • Oracle
  • MongoDB