前端知识集合

计算机基础

计算机组成
面向对象
数据结构(队列、堆栈、树、图)
基础算法(排序算法、矩阵算法、动态规划、图算法、NP)
UML

基本常识

开发流程
测试 单元测试、冒烟测试、回归测试
and more

HTML

了解html基本结构
熟悉常见标签及对应属性及其用法
熟悉常见的全局、表单、鼠标、键盘事件

CSS

了解css基本语法以及样式类型
熟悉常见的css样式
熟悉css框模型以及定位系统
熟悉各种选择器的属性
熟悉响应式设计以原理
熟悉常见布局的实现方式

CSS3

熟悉边框、背景、文本、字体效果
熟悉动画、过度、2D/3D转换效果
熟悉多列、flexbox布局

HTML5

语义,新增标签类型、表单属性、iframe改进
通信,WebSockets、WebRtc
离线存储,IndexdDB, 文件API
多媒体,音视频、Carmera API
3D、图形、效果,熟悉canvas、svg、webgl,了解图片裁剪、2D画图以及动画开发
性能、集成,webworker、history api、contendEditable、拖放、焦点、协议处理、requestAnimatinFrame、全屏、触控

ES5

熟悉基本语法
熟悉变量、作用域、对象、函数
熟悉继承实现
熟悉正则表达式
熟悉BOM操作
熟悉DOM原生操作
熟悉离线以及客户端存储机制
熟悉动画的基本原理与实现

ES6

ES6/ES7语法
实现原理
熟悉变量定义扩展、解构赋值
熟悉字符串、正则、函数、数组、对象扩展
熟悉Symbol、Set、Map

HTTP

熟悉http报文格式
熟悉http基本协议,常见状态码
了解ajax请求原理(xmlhttprequest、fetch)
熟悉常见的跨域方式(jsonp、cros)
了解浏览器缓存原理
七层网络协议分析
TCP连接和Nagle算法
使用wireshark学习七层网络协议
DNS服务器详解
Node静态服务器实现与缓存机制的实现
HTTP常用报文的实际应用
Node Stream的应用与文件分片上传策略
RestfulAPI设计和使用
CDN和OSS的使用
HTTPS安全通信过程分析
http2/push
http1.1

性能优化

H5专项

JQUERY

jq源码分析
熟悉jquery选择器
熟悉jquery事件机制
熟悉jquery动画,显\隐、淡入淡出、滑动
熟悉jquerydom操作,尺寸API
熟悉jquery遍历
熟悉jquery ajax

模块、异步加载、构建

了解CommonJS、ADM、CMD、UMD模块规范
JavaScript模块化发展的演进历史 CommonJS、AMD、CMD、ES6模块的演进历史
目前最主流的模块化实现方案: CommonJS 到 ES Module
手写 CommonJS 的简单实现
了解gulp、grunt、browserify基本使用以及gulp的实现原理
熟悉seajs、requirejs基本使用以及打包方式
熟悉webpack基本配置、插件机制以及运行原理,工作原理分析
熟悉webpack-dev-server基本使用
常用插件(压缩、合并、编译、预览服务、自动注入)
node.js中自定义流的高级用法
实现自定义插件(auto-prefixer)
常见的loader以及plugin(DllPlugin等)
编写自定义Loader、编写自定义Plugin
webpack优化(resolve、模块热替换、压缩、代码分割、可视化工具)
callback、promise、generator、co、async/await等异步流程控制(async和await的实现原理)
熟悉Promise设计模式原理及在es6中的应用
手写一个符合promise A+规范的promise实现
熟悉迭代器、Generator、Async使用
熟悉Class基本语法以及继承
熟悉Module基本使用

版本管理

了解git分布式基本原理
熟悉git常用命令(初始化、拉取代码、推送代码、分支、合并代码)
熟悉git常见分支管理方式

UI组件

熟悉字体图标及实现原理
了解栅格布局基本使用以及实现原理
了解下拉菜单、导航菜单、分页、步骤条的实现方式
了解自动完成、级联选择、单选、多选框、下拉选择、日期选择、滑动条、开关的实现方式
了解文件上传组件的实现原理
了解树、表格的实现方式
了解文字提示、折叠面板、时间轴、走马灯实现方式
了解提示框、对话框、通知框、加载中实现方式

IDE、调试

熟悉vscode、sublime、webstorm等IDE
熟悉chrome-devtool,模拟设备、查看DOM属性
熟悉chrome-devtool,断点调试
熟悉chrome-devtool,network模块,分析网络加载数据
熟悉chrome-devtool,performance模块,性能分析
熟悉chrome://inspect/#devices调试移动设备
熟悉chrome://net-internals/#events分析网络日志

JavaScript引擎

Javascript运行机制

segmentFault
掘金

React 技术集

babel

babel编译器原理(解析、转化、代码生成)
babel插件开发

react

react源码结构
react启动流程
react动画
react组件生命周期
react-dom基本实现
react diff算法核心
主流虚拟dom diff算法对比
react渲染性能优化
react服务端渲染
react 16 新特性
主流类react框架对比
类react框架核心技术难点

redux

redux来源,flux核心思想
redux中间件实现机制
redux源码分析
react-redux源码分析
主流数据状态容器对比(redux、mobx等)

redux-saga

高阶使用(channel、cancel、take等等)
redux-saga源码实现
主流异步中间件对比(redux-thunk, redux-saga,redux-observable)
rxjs调研

react-router

react-router4 基本使用
react-router4源码实现

dva

dva源码分析

antd

antd组件库基本理念
antd常用基础组件实现(方便基于此二次开发)
antd 与 rc-component 结构
antd form实现

webpack

webpack基本使用
webpack 插件开发
weback tree-sharking分析
webpack性能优化
webpack源码分析

react-native

react-natvie 基本指引
react-natvie核心原理
实践

基于实际项目讲解,深度剖析各个模块之间的协作以及实际运作过程

node高级

Node基础与实战
Node事件原理和发布定阅设计模式
函数式编程

2.Express
1.手写express框架2.中间件的实现原理、bodyParser、cookie-parser、static、模板原理
3.Koa
1.手写Koa框架2.中间件的实现原理、bodyParser、cookie-parser、static、模板原理
4.Linux
1.Linux介绍2.Linux文件和目录3.Linux用户和组权限4.Linux命令5.Shell脚本
5.Mongodb
1.Mongodb安装和使用2.Mongodb的系统架构3.Mongodb高级查询4.Mongodb索引5.Mongodb安全与权限6.mongoose模块之Schema7.mongoose模块之Model8.使用Model对文档进行增删改查
6.博客(express+mongodb+mongodb)
基于bootstrap+express+mongodb实现一个包括用户管理、文章管理、多看留言、分页查询、 搜索、文件上传、pv留言统计等功能完整的博客系统。使用了express的路由、ejs模板和serve-favicon、 morgan、cookie-parser、body-parser、express-session、connect-mongo、connect-flash、uuid、 async等内置各种中间件以及其它发路径保护等自定义中间件,并扩展了富文本编辑器、markdown和heroku云布署等功能。1.项目初始化2.用户管理3.文章管理4.分页查询5.搜索6.文件上传7.PV留言统计
7. 聊天室项目实战(react+socket.io+mongodb)
1. 什么是实时通信
2. 什么是Websocket3.websocket和http的对比4.使用socket.io实现聊天室5.匿名聊天6.有用户名的聊天和用户列表7.用户私聊8.划分不同的聊天房间9.消息持久化10.支持QQ表情
8.MySQL
1.MYSQL安装与使用2.MYSQL系统架构3.数据处理之增删改查4.数据类型和约束分页5.索引和慢查询性能分析6.数据库安全之防止SQL注入
9.爬虫(cheerio+request+mysql)
1.发出HTTP请求获取指定URL中的内容2.使用cheerio的语法操作网页元素,提取需要的元素3.将数据保存到mysql数据库中4.建立web服务器显示这些数据5.使用计划任务自动执行更新任务6.布署项目到阿里云中并配置反向代理
10.Redis
1.Redis安装和使用2.5种数据结构及使用场景3.API的理解和使用4.Redis客户端
11.Nginx
1.nginx的安装和使用2.模块和基本配置3.正向反向代理等应用场景
12.Docker
1.Docker介绍和安装2.Dockerfile3.存储和镜像仓库4.Dock实战
13.单元测试
1.测试用例和需求分析2.单元测试框架mocha/ava3.自动化测试之selenium
14.集群和负载均衡
1.cluster的工作原理和负载均衡算法2.pm2工具
15.前端性能监控与性能优化、行为监控与安全防范
1.针对重绘重排的优化策略2.如何发现性能短板与各个短板的优化3.前端埋点上报4.前端错误上报5.前端性能上报6.前端行为监控上报7.前端恢复上线与A/B测试8.网络缓存技术分析9.浏览器渲染过程分析(DOM树、RenderObject、绘图上下文)
16.项目部署
1.npm script工作流2.shell脚本布署
17.安全
1.XSS的原理与代码实战2.CSRF的原理与代码实战
18.功能测试与性能测试
1.测试用例和需求分析2.常用功能测试框架基础使用(mocha/ava)3.常用性能测试框架基础使用(Benchmark)
19.全链路优化
1.DNS优化2.请求速度优化3.渲染优化之 JS css image html4.缓存优化5.服务器优化6.数据库优化

前端设计模式

创建型设计模式
1.工厂模式2.建造者模式3.原型模式4.单例模式
结构型设计模式
1.外观模式2.适配器模式3.代理模式4.装饰者模式5.组合模式
行为型设计模式
1.观察者模式2.状态模式3.策略模式4.命令模式5.访问者模式6.中介者模式5.迭代器模式

算法与数据结构
1.时间复杂度
2.空间复杂度
3. 常见排序算法

1.冒泡排序、优化
2.选择排序
3.插入排序
4.归并排序
5.快速排序式 
6.计数排序 
7.桶排序 
8.基数排序 
9.链表(链表反转、链表是否有环)
11.二叉树搜索算法
12.青蛙跳台阶问题-动态规划算法
13.React虚拟DOM Diff算法实现

你可能感兴趣的:(技术集)