珠峰前端架构课 

  • 领取方式:学币购买

  • 课程总容量:215.2GB

  • 视频清晰度:1080p超清

  • 是否加密:否

  • 是否带课程源码等资料:是

 

隐藏内容

此处内容需要权限查看

  • 普通19.9学币
  • 永久会员免费推荐

课程介绍

珠峰前端课程内容对标阿里p6+能力模型

课程针对阿里P6+职级能力模型设计,帮助学员技术水平对标阿里p6+。

注重底层原理源码

不仅是实战应用,课程更注重底层原理源码,包括手写Vue、React前端框架,还会深度剖析其它源码。

十六年经验大牛领衔授课
学到的不止技术

十六年经验架构师授课,学到的不止技术,架构思维也尤为重要,如何从全局底层角度构思代码。

实战训练营专项提升

丰富的实战训练营可供参加,学习先进的技术同时,更贴合实际业务!

课程目录

  • Vue3+TS中后台系统
  • Typescript+ReactHooks实现全栈项目
  • 持续集成CI/CD实战
  • K8S实战训练营
  • 微信电商小程序实战
  • Antv/G6实现思维导图实战
  • 可视化监控实战训练营
  • lowcode可视化拖拽组件训练营
  • 从零实现脚手架vue-cli实战
  • nestjs基础到实战项目实战
  • Typescript+React17组件库实战
  • Vue3+ts组件库实战
  • 前端全链路监控实战训练营
  • uni-app电商实战训练营
  • Egg.js从实战到源码训练营
  • 浏览器插件实战训练营
  • Vscode插件开发实战训练营
  • npm私服搭建和npm知识体系训练营
  • 电商网站抢购脚本
  • electron视频系统实战训练营
  • nest-serverless-graphql训练营

Vue3

Webpack5

  • 手写 Vue3.0 模板编译原理
  • 手写 Vue3.0 响应式原理(实现 reactive ref computed effect)
  • 手写 Vue3.0 虚拟DOM及组件渲染原理
  • 手写 Vue3.0 中生命周期原理及异步渲染原理
  • 手写 Vue3.0 中的 DOM-DIFF 算法
  • 手写 Vite2.0 工具实现原理及热更新原理
  • 手写Vue3中diff算法属性比对及子元素比对流程
  • 手写Vue3中最长递增子序列算法
  • webpack课程全面升级为webpack5,包括webpack5的新特性,比如webpack5的模块联邦实现微前端
  • 手写更为复杂的webpack插件和loader,比如骨架屏插件、DllPlugin插件等
  • 手写 px2rem-loader、style-loader和 css-loader
  • CSS抽象语法树

React17

前端编译原理

  • react全面升级为React17
  • React路由升级为hooks版本
  • react-redux升级为hooks版本
  • 更多的redux中间件 redux-actions reselect redux-persist
  • 全新的状态React官方管理库recoil和有限状态机版的xstate
  • Typescript+React17全新组件库
  • 全新的umi3实战和手写umi3课程
  • 全新的Antdesign4版基于hooks的Form组件
  • 有限状态机
  • 词法分析和语法分析
  • 递归下降算法和上下文无关文法
  • 手写babel和babel插件
  • 手写JSX到JS的babel转换插件
  • React自定义Hooks实战
  • 前端人的健康之道
  • 实现px2remLoader
  • 从零实现rollup和tree-shaking
  • React17面试题源码级大汇总
  • 从零实现create-react-app脚手架
  • 从零实现@vue/cli 4.0脚手架
  • 浏览器渲染原理和性能优化
  • 从零实现Umi3和插件系统
  • webpack5性能优化
  • 更多更新详情请看大纲

OUTLINE 课程大纲

第一部分 核心课程:Vue.js全家桶
Vue.js全家桶

Vue2源码篇

  • 手写 Vue 响应式原理
  • 手写 Vue 模板编译原理
  • 手写 Vue 组件化机制原理
  • 手写 Vue 生命周期原理
  • 手写 Vue 虚拟 DOM 和 Diff 算法原理
  • 手写 Vue 计算属性、watch等原理
  • 手把手剖析Vue2源码 (剖析props、slot、directive…)

Vue3源码篇

  • 手写 Vue3.0 模板编译原理
  • 手写 Vue3.0 响应式原理(实现 reactive ref computed effect)
  • 手写 Vue3.0 虚拟DOM及组件渲染原理
  • 手写 Vue3.0 中生命周期原理及异步渲染原理
  • 手写 Vue3.0 中的 DOM-DIFF 算法
  • 手写 Vite 工具实现原理及热更新原理
  • 手写Vue3中diff算法属性比对及子元素比对流程
  • 手写Vue3中最长递增子序列算法
  • 手把手剖析Vue3源码

Vue路由源码篇

  • 手写Vue-Router中Hash模式和History模式的实现
  • 手写动态路由addRoutes原理
  • 手写$route及$router实现
  • 手写router-link及router-view组件
  • 手写多级路由实现原理
  • 手写Vue-router中路由钩子原理

Vuex源码篇

  • 手写state、getters、mutation、actions原理
  • 手写vuex中的modules原理及namespaced原理
  • 手写Vuex中插件机制 replaceState、subscribe…
  • 手写Vuex中辅助函数 mapSate、mapGetters…

VueSSR原理篇

  • SSR实现原理剖析及使用场景剖析
  • 通过Webpack构建Vue项目,实现客户端打包和服务端打包
  • 使用koa实现服务端渲染
  • 集成Vue-Router及Vuex

Vue@3 实战篇

  • Vue3正式版Composition API组件库开发
  • Vue3正式版中的自定义canvas渲染器
  • Vue3正式版+vuex中的typescript复杂类型推断
  • Vue3正式版中的SSR服务器端渲染

组件化开发

  • 什么是组件和组件的应用
  • 组件的属性和校验
  • 组件之间的通信
  • EventBus 应用
  • 组件 slot 用法

从零封装专业级 Vue3.0 组件库

  • 从 0 到 1 实现自己的组件库
  • 使用 VitePress 搭建组件库文档
  • 基于 VueCli4 编写组件测试,Karma、Mocha、Chai
  • 实现组件库的按需加载,组件库主题定制化
  • 从零封装树形组件
  • 从零封装日历组件
  • 从零封装表单组件
  • 从零封装模态窗口组件
  • 从零封装轮播图组件
  • 从零封装表格组件
  • 从零封装上拉加载和下拉刷新组件
  • 从零封装异步加载的省市级联组件
  • 组件的单元测试和集成测试

路由篇(权限控制)

  • vue router 的基础应用
  • 编程式导航
  • 路由的嵌套
  • 路由重定向
  • 路由守卫
  • 路由懒加载
  • 路由元信息
  • 实现动态权限
  • 菜单、按钮及权限认证、登录权限

Vue SSR 服务器端渲染

  • SSR 原理和设计理念
  • 集成 KOA 实现服务器端渲染
  • webpack 构建 Vue SSR 项目
  • 集成路由及代码分割
  • 集成 VueSSR 和 Vuex 实现数据同步

项目优化篇

  • 路由懒加载
  • 页面预渲染
  • SSR 之 Nuxt 实战
  • Vue 骨架屏
  • Vue-devtools 开发插件
  • Vue 动画原理

Vue2 & Vue3 核心应用进阶篇@2

  • 组件N种通信方式
  • 自定义指令,v-has按钮级权限、v-lazy实现图片懒加载
  • Vue.extend之Vue组件在线运行器
  • Vue中JSX语法高阶使用
  • Vue中递归组件之菜单权限
  • SSR 之 Nuxt 实战
  • Vue页面预渲染、Vue骨架屏@3
  • Vue3新特性 teleport、suspense应用
  • Vue3中CompositionAPI详解
  • 对比Vue3和Vue2中的区别和改进

Vue3.0 + TS 全家桶项目

  • Vue-cli4 + Vant项目搭建
  • 服务器构建 Typescript + Express + Mongodb
  • 路由配置及Vuex最佳实践
  • 进阶Vue3中逻辑封装及CompositionAPI使用
  • 数据获取和 axios 应用拦截器
  • 基于JWT的注册登录权限管理
  • 公共组件封装
  • 上拉刷新、下拉加载、图片懒加载
  • 项目布署和上线

Vue2.0 + ElementUI管理系统全栈项目

  • 后端 Koa + Mongodb + Redis
  • 项目构建流程及最佳实践
  • 前后端分离登录权限
  • 路由权限控制
  • 基于角色的菜单权限及按钮权限
  • Vue 中动态管理路由及 Vuex
  • Vue 中 axios 二次封装
  • Vue 中 websocket 封装(心跳检测,断线重连等)
  • 项目打包及上线流程
第二部分 核心课程:Node.js
Node.js

Node.js 核心模块

  • EventLoop 和事件队列
  • process 全局对象
  • events 事件处理模块
  • commonjs 原理解析
  • 深入字符编码
  • Buffer 对象
  • fs 文件模块
  • 压缩与解压缩
  • 加密和签名算法
  • stream 流的原理和应用
  • 多进程与集群
  • tcp 和 http 服务
  • tcp 和 http 服务
  • 多语言、防盗链、正向和反向代理服务器

Node 框架

  • express 路由配置
  • express 处理参数
  • express 使用中间件
  • express 模板引擎
  • express 静态文件服务器
  • express 重定向
  • cookie 和 session 原理
  • 1 比 1 手写 express 框架
  • 1 比 1 手写 koa2 框架
  • JWT 权限认证原理

分片断点文件上传

  • 整体上传
  • 分片上传
  • 进度条
  • 秒传
  • 断点续传(支持单个分片续传和刷新浏览器续传)
  • 暂停和恢复

webpack5工程化

  • grunt、gulp、webpack、rollup和parcel的实战和对比
  • webpack5 实战 entry、output、loaders、plugins、文件指纹
  • webpack5 优化(dll、resolve、模块热替换、压缩、代码分割、可视化性能分析工具)
  • Webpack5 源码分析,懒加载原理、热更新原理
  • Webpack5 源码分析,懒加载原理、热更新原理
  • 编写自定义 Plugin(html-webpack-plugin)
  • 编写 Babel tree shaking 插件
  • Webpack 的事件机制 tapable 和 AST 抽象语法树
  • 手写自己的 Webpack 包括 make、seal、emit、 动态 import、splitChunks、支持 loader 和 plugin
  • 从零实现webpack中的骨架屏插件
  • 从零实现webpack优化神器之DllPlugin
  • 从零实现Webpack中的热更新(HMR)
  • 从零实现Webpack5模块联邦原理并实现微前端
  • webpack实战、性能优化和源码流程等面试题训练营
第三部分 核心课程:React全家桶
React全家桶

实战篇

  • create-react-app使用的深入配置
  • JSX本质
  • 原生组件和自定义组件
  • 自定义组件的属性和状态
  • 事件处理
  • 新旧生命周期
  • 上下文和高阶组件
  • 组件通信方式
  • 全部的Hooks

手写 React15 源码

  • 手写实现虚拟 DOM
  • 手写实现类组件、函数组件和原生组件的渲染
  • 手写实现 setState
  • 手写实现 DOM-DIFF
  • 手写实现 DOM 更新
  • 手写实现合成事件和事务机制

手写 React16 源码

  • 手写React17中的虚拟DOM
  • 手写Fiber 架构算法和数据结构
  • 手写Hooks 的原理和实现

手写 React17 源码

  • 手写Fiber 架构算法和数据结构
  • 手写DOM-DIFF算法
  • 手写React合成事件系统
  • 手写React中的setState异步渲染
  • 手写React中的Hooks
  • 手写Fiber 任务调度和更新策略

优化篇

  • JSX 原理和虚拟 DOM 原理
  • setState 异步原理实现
  • React 中的事务实现
  • 使用 immutablejs 和 PureComponent
  • ErrorBoundary、Suspense 和 Fragment
  • React 中的高阶组件和 render props
  • 实现 React 骨架屏 webpack 插件
  • React 中的图片和组件懒加载
  • React 中的长列表优化,只渲染可视区域 DOM
  • Jest+Enzyme 实现 React 单元测试

路由篇

  • 路由配置和二级路由
  • 路由懒加载
  • 路由重定向
  • 路由之权限管理和受保护的路由
  • 手写一个完整的 React-router4 路由库(HashRouter、BrowserRouter、Route、Switch、 Link、NavLink、Prompt、Redirect)
  • 实现路由hooks(useHistory、useLocation、useParams、useRouteMatch)

Redux 篇

  • Redux 核心用法 Action/Reducer/Store
  • 手写实现 Redux、react-redux、connected-react-router
  • 手写 Redux、react-redux、redux-logger、redux-promise、redux-thunk、redux-saga、 redux-actions、reselect、redux-persist等经典 redux 中间件类库
  • 手写hooks版react-redux(useStore、useReduxContext、useDispatch、useSelector)

手写 React 服务器端渲染 SSR

  • 客户端渲染 VS 服务端渲染
  • React 中的服务端渲染
  • 同构的原理和意义
  • SSR 中使用路由
  • SSR 中使用 Redux
  • SEO 优化
  • 预渲染

Next.js 实战

  • Next.js 路由和二级路由
  • 实现样式集成
  • 集成 koa
  • 实现懒加载
  • 集成 redux
  • 调用接口
  • 实现loading效果
  • 注册登录和权限
  • 新旧版初始化函数
  • 服务器布署

mobx 篇

  • mobx 实战 observable、computed、autorun、when、reaction
  • 手写一个 mobx 类库

React状态管理

  • React原生Context API实现状态管理
  • React官方出品状态库Recoil实战
  • 手写React官方出品Recoil核心API
  • Vue 骨架屏
  • 有限状态机模式的工作流程和原理
  • 基于有限状态机的状态库XState实战
  • 手写实现XState核心API

从零封装自己的 React 组件库

  • 从零实现 Button 组件和单元测试
  • 使用 VuePress 实现专业文档
  • 从零实现表单组件
  • 从零实现布局组件
  • 从零实现输入组件
  • 从零实现拖拽文件上传组件
  • 从零实现时间选择组件
  • 从零实现模态窗口组件
  • 从零实现轮播图组件
  • 从零实现分页和表格渲染组件
  • 从零实现树型组件
  • 从零实现无限滚动组件

Typescript+React 工程化实践

  • nunjucks 模版引擎、yaml 配置与法 | mock.js 模拟数据
  • dva
  • 创建应用
  • 集成 AntDesign
  • 定义路由和 UI 组件
  • 链接仓库
  • 使用 effects 和 reducers
  • 从零实现dva所有核心API

Umi3和antd-design-pro中后台项目实践

  • Umi3的项目整体目录结构
  • Umi3集成antd-design-pro
  • Umi3中配置式路由、动态路由和权限方案
  • Umi3中dva、redux和redux-persist数据流解决方案
  • Umi3中国际化实战
  • 手写Umi3自定义插件
  • 手写Umi3核心实现
第四部分 专题课程
专题课程

实现immer不可变数据

  • 共享可变状态
  • 不可变数据的解决方案
  • 实现immer
  • 实现produce
  • 实现useImmerState

实现css-loader

  • css-loader实战
  • 实现css-loader
  • 支持@import功能
  • 实现style-loader
  • PostCSS抽象语法树

实现UMI3.0

  • 约定式路由实战
  • 源码调试UMI3.0
  • 实现UMI3的运行时系统
  • 实现UMI3的插件系统
  • 实现编译时插件
  • 实时目录生成功能
  • 实现服务启动
  • 实现运行时插件

实现webpack5中的模块联邦

  • Module Federation工作原理
  • Module Federation实战
  • 通过shared处理公共依赖
  • 处理双向依赖
  • 支持多个remote
  • 实现Module Federation

实现React性能优化

  • 实现编译阶段的优化
  • 实现路由切换优化
  • 实现更新阶段优化
  • immutable.js
  • 时间分片和虚拟列表渲染大数据量
  • React性能分析工具

实现JSX转换模块

  • AST抽象语法树
  • babel工作流
  • 实现旧版JSX转换
  • 实现新版JSX转换
  • 实现属性的转换

实现实用的ReactHooks

  • 实现useRequest实现分页请求
  • 实现useDrag实现拖拽
  • 实现useForm实现表单自动托管
  • useAnimation实现自定义动画

实现@vue/cli脚手架4.0

  • @vue/cli4.0源码调试
  • 实现参数解析
  • 实现脚手架的插件系统
  • 实现create命令
  • 实现@vue/cli-service插件

实现create-react-app

  • create-react-app源码调试
  • 实现init方法
  • 实现createApp方法
  • 实现run方法

实现react-scripts

  • react-scripts源码调试
  • 实现build命令
  • 实现start方法

实现rollup和tree-shaking

  • rollup项目实战
  • AST和作用域分析
  • 实现rollup
  • 实现tree-shaking
  • 实现变量重命名

实现px2rem-loader

  • 移动端适配实践方案
  • CSS抽象语法树
  • px2rem-loader实战
  • 如何编写自定义loader
  • 实现实现px2rem-loader

实现React的keepalive组件

  • 基于fiber实现React缓存组件
  • 支持保持滚动状态
  • 支持缓存生命周期管理
  • 使用LRU管理缓存

前端人的健康之道

  • 颈腰椎病痛的原理及对策
  • 肩周炎和鼠标手的原理和对策
  • 干眼症的分级症状和对策
  • 跑步之道-科学跑姿
  • 跑前热身
  • 跑后拉伸

V8 内存管理

  • JavaScript 中的垃圾收集
  • JavaScript 中的内存管理
  • V8 垃圾回收机制分类
  • 引用计数、标记清除、标记整理和增量标记

前端编译原理

  • 编译器工作流程
  • 有限状态机
  • 语法分析
  • 递归下降算法
  • 上下文无关文法
  • 语法分析器
  • 遍历语法树
  • 语法树转换器
  • 代码生成器
  • 实现babel和babel插件
  • 从零实现JSX到JS的babel转换插件

sourcemap

  • sourcemap的实现原理,手写实现算法
  • webpack中的source-map详细配置和最佳实践
  • 生产环境里无source-map如何线上调试
  • source-map-loader详解

前端二进制应用实战

  • 计算机原码、反码和补码的原理
  • 前端浮点数精度问题和超大数求和原理
  • 前端中的FormData、Blob、File、ArrayBuffer、TypedArray、DataView、DataURL、 ObjectURL、Text
  • 前端图片裁剪和上传预览
  • 纯前端实现音频的合并剪辑处理

手写Nest.js版的IOC容器

  • 控制反转和依赖注入
  • 实现服务的注册
  • 实现值的获取
  • 实现注入和获取

Typescript

  • 开发环境
  • TypeScript 安装和编译
  • 数据类型
  • 函数
  • 接口
  • 泛型
  • 结构类型系统
  • 类型变换
  • 模块 VS 命名空间
  • 类型声明
  • 声明文件
  • Typescript+React 集成开发
  • Typescript+Vue 集成开发
  • Typescript 工程化

PWA

  • manifest.json 配置
  • service worker 生命周期
  • fetch
  • 请求拦截
  • cache api 以及缓存策略
  • Notification
  • API
  • workbox 应用
  • Vue 中应用 PWA

从零实现 vue-cli

  • 脚手架项目创建
  • 解析命令行参数
  • create 命令实现
  • config 命令实现
  • 项目发布和布署

前端监控和埋点系统

  • 前端监控目标
  • 前端埋点方案
  • 监控 JS、Promise、资源加载错误
  • 接口异常采集
  • 白屏和加载时间
  • 性能指标和卡顿
  • PV 和用户停留时间
  • 可视化报表查询
  • 前端监控项目实战

serverless 云开发

  • serverless framework
  • Serverless Components
  • 云函数 SCF 组件
  • API 网关组件
  • 布署静态网站
  • 布署 express 项目
  • 布署 express+layer 项目
  • 部署 Vue+Express 全栈应用

微前端实战与原理

  • 微前端工程化
  • 同时支持 angular、vue、react 的微前端框架实战
  • single-spa和qiankun实战
  • 从零编写一个微前端框架
  • 应用状态管理
  • 应用的加载管理
  • 路由管理

GraphQL

  • GraphQL 概念
  • 使用 GraphQL 查询和变更数据
  • 后端搭建 GraphQL 服务器
  • ReactHooks 和 GraphQL 项目实战

GraphQL+Nest.js 微服务开发

  • TypeScript+Nest.js 项目构建
  • Nest.js 模块定义
  • GraphQL 的服务器搭建与查询操作
  • Nest 实现后端微服务

flutter

  • dart 语法
  • flutter 环境配置
  • 常用组件
  • 布局
  • 导航和动画
  • flutter 版珠峰课堂项目实战

electron

  • 配置 electron 环境
  • 主进程和渲染进程
  • 进程间通信
  • 文件对话框操作
  • 消息通知和快捷键
  • electron 版珠峰课堂项目实战

uni-app

  • 调试
  • 使用 hbuilder
  • flex 布局
  • 多端发布
  • 路由和动画
  • 微信分享
  • uni-app 版珠峰课堂项目实战

ReactNative

  • UIExplorer 项目
  • css 盒子模型和样式
  • css 元素浮动
  • flexbox 布局
  • ReactNative 长度单位
  • RN 事件
  • React 动画原理
  • 实现一个 Navigator
  • App 架构之目录结构、路由和组件
  • App 架构之网络和 Container
  • App 架构之命名空间
  • ReactNative 第三方插件
  • 珠峰课堂项目实战

阿里企业级开发框架 egg.js

  • 项目架构
  • 配置路由
  • 静态文件中间件
  • 模版引擎
  • 远程接口服务
  • 计划任务
  • 集成 MYSQL
  • Restful 接口
  • Sequelize 持久化工具
  • 国际化
  • 扩展工具方法
  • 中间件
  • 运行环境
  • 单元测试
  • 服务器部署和运维
  • 手写自己的 Egg.js 框架,包括 egg-core、egg-init、egg-cluster
  • 自定义插件和框架 ,手写 egg-socket.io 插件

网络安全

  • Web 漏洞的分析与防御
  • XSS(跨站脚本攻击)
  • CSRF(跨站请求伪造)

前端性能优化

  • webpack 优化方案
  • 浏览器缓存原理和最佳设置策略
  • CDN 缓存优化
  • EventLoop 异步更新
  • 避免回流和重绘
  • 节流与防抖
  • 通过 Performance 监控性能

计算机网络

  • OSI 七层模型
  • TCP/IP 参考模型
  • 物理层
  • 数据链路层
  • 互联网层(网络层)
  • 传输层
  • 应用层

网络协议实现

  • 基于Node的TCP服务器从零实现HTTPS协议
  • 基于Node从零实现websocket协议
  • 基于Node从零实现Ajax对象XMLHttpRequest

Linux

  • Linux 与 Windows 的不同
  • Linux 安装和虚拟机的使用
  • 桥接、NAT、Host-Only 等网络连接
  • 快照、克隆、挂载点和分区
  • Linux 常用命令 VI 编辑器、用户与权限管理、服务管理、软件管理、网络管理、系统命令
  • Shell 实战 监控服务和主机网络状态

Nginx

  • nginx 的安装和使用
  • 模块和基本配置
  • 正向反向代理等应用场景
  • CDN
  • 浏览器缓存
  • 跨域
  • 防盗链
  • rewrite
  • 负载均衡集群

Docker

  • 虚拟机
  • Linux 容器
  • Docker 核心概念
  • Docker 架构
  • Docker 镜像
  • Docker 容器
  • Dockerfile
  • Docker 数据盘
  • 网络配置
  • docker-compose

CI/CD 持续集成

  • jenkins job
  • shell 集成
  • 集成 nginx 和 git
  • 持续集成和部署
  • travis gitlab ci

Mongodb

  • Mongodb 安装和使用
  • Mongodb 的系统架构
  • Mongodb 高级查询
  • Mongodb 索引
  • Mongodb 安全与权限
  • mongoose 模块之 Schema
  • mongoose 模块之 Model

MYSQL

  • MYSQL 安装与使用
  • MYSQL 系统架构
  • 数据处理之增删改查
  • 数据类型和约束分页
  • 索引和慢查询性能分析
  • 数据库安全之防止 SQL 注入
  • 数据库设计 ER 图设计
  • 数据库事务和锁
  • 数据库设计之三大范式
  • 分组和聚合函数
  • 基于角色的权限访问控制(Role-Based Access Control)

Redis

  • 5 种数据结构及使用场景
  • API 的理解和使用
  • Redis 客户端
  • 发布订阅
  • 事务
  • 备份和恢复

express+mongoose 多人博客

  • 初始化项目和依赖的模块
  • 跑通路由
  • 使用 bootstrap 渲染模板
  • 实现用户注册的功能
  • 实现用户的登录功能
  • 实现会话功能并控制菜单显示
  • 增加登录状态判断中间件
  • 成功和失败时的消息提示
  • 实现上传头像并在导航的右上角显示个人信息
  • 新增发表文章
  • 首页显示文章列表
  • 删除文章
  • 更新文章
  • 实现搜索功能
  • 实现分页的功能

Typescript+React+Redux 网校课堂

  • webpack 环境搭建
  • 底部页签导航
  • React 动画
  • Redux 改变课程分类
  • 实现头部轮播图
  • 课程列表列表
  • 长列表优化(只渲染可视区域)
  • 下拉刷新(节流)
  • 上拉加载(防抖)
  • 记录滚动条位置
  • 课程详情
  • 用户注册和登录
  • 受保护的个人中心
  • 购物车动画

Egg.js+AntDesignPro+MySQL 开发企业级管理系统

  • 用户注册和登录
  • JWT 权限认证
  • 用户头像上传
  • 用户手机号注册与登录
  • 页面和按钮菜单权限
  • 用户列表管理
  • 为角色分配权限
  • 为角色分配用户
  • egg.js+mysql 实现后端接口

React+Mongodb+websocket 开发多人聊天室

  • 什么是实时通信
  • 什么是 Websocket
  • websocket 数据帧格式解析
  • 从零实现 websocket 协议
  • websocket 和 http 的对比
  • 使用 socket.io 实现聊天室
  • 匿名聊天
  • 有用户名的聊天和用户列表
  • 用户私聊
  • 划分不同的聊天房间
  • 消息持久化

cheerio+mysql+nodemailer 开发个性化新闻爬虫

  • 用 superagent+cheerio 爬取网页内容
  • 数据持久化到 mysql 数据库
  • 用户个性化邮箱订阅标签
  • 数据更新按兴趣分发推送邮件
  • 用 ElasticSearch 实现全文检索

使用 canvas 开发开发 flappy bird

  • canvas 基础知识
  • 画布和画图
  • background 实现
  • 实现大地
  • 绘制管道
  • 绘制小鸟
  • 碰撞检测
  • 场景管理

使用 three.js 开发微信小游戏跳一跳

  • 基础信息属性配置
  • 几何体创建以及相机镜头位置改变
  • 更新相机坐标实现视觉动画
  • 绑定事件实现 jumper 跳跃功能
  • 回顾思路梳理逻辑
  • 最终完成实现成功和失败的处理和重置操作
  • 场景管理之场景

Nest.js 实战

  • Nest.js 核心概念
  • TypeORM 集成使用
  • 文件上传
  • 微信支付和支付宝支付
  • antdesign 实现权限用户后台管理系统

设计模式

  • UML 模型图
  • 用例图
  • 类图和对象图
  • 活动图
  • 时序图
  • 协作图
  • 组件图
  • 部署图

面向对象

  • 什么是面向对象
  • 封装、继承和多态
  • 面向对象和面向过程

设计原则

  • 开放封闭原则
  • 单一职责原则
  • 里氏替换原则
  • 依赖倒置原则
  • 接口隔离原则
  • 迪米特法则
  • 合成复用原则

创建型模式

  • 抽象工厂模式(Abstract Factory)
  • 建造者模式(Builder)
  • 工厂方法模式(Factory Method)
  • 原型模式(Prototype)
  • 单例模式(Singleton)

结构型模式

  • 适配器模式(Adapter)
  • 桥接模式(Bridge)
  • 组合模式(Composite)
  • 装饰模式(Decorator)
  • 外观模式(Facade)
  • 享元模式(Flyweight)
  • 代理模式(Proxy)

行为型模式

  • 职责链模式(Chain of Responsibility)
  • 命令模式(Command)
  • 解释器模式(Interpreter)
  • 迭代器模式(Iterator)
  • 中介者模式(Mediator)
  • 备忘录模式(Memento)
  • 观察者模式(Observer)
  • 状态模式(State)
  • 策略模式(Strategy)
  • 模板方法模式(Template Method)
  • 访问者模式(Visitor)

前端数据结构和算法

  • 算法的基础知识
  • 输入、输出和数量级 | 计算能力的变革
  • CPU、寄存器和内存 | 二分查找 | 插入排序 | 冒泡排序

算法的衡量和优化

  • 时间复杂度和空间复杂度 | 复杂度的本质
  • 合并排序 | 递归函数复杂度分析
  • 递归表达式分析法 | 递归数学归纳法分析
  • 主定理

排序算法

  • 排序算法介绍
  • 基于比较的排序算法
  • 合并排序优化
  • 快速排序
  • 快速排序复杂度和优化
  • 计数排序
  • 基数排序
  • 桶排序
  • 外部排序

递归

  • 递归的基本概念
  • 递归图形的绘制
  • 递归和穷举问题
  • 组合问题
  • 递归空间优化
  • 回溯算法
  • 重复子问题优化
  • 尾递归
  • 搜索问题(8 皇后)
  • 深度优先搜索和广度优先搜索

数据结构

  • 数组
  • 双向链表
  • 反转单向链表
  • 队列

进阶算法

  • 反转单向链表
  • LCS 问题的子结构
  • 填表法
  • 构造结果

BAT 面试真题

  • 反转二叉树
  • 解析 Query 字符串
  • 取 N 个数字为 M
  • 火车排序问题和队列
  • 网格走法动态规划
  • 两个栈实现一个队列
第五部分 项目实战训练营
训练营

Vue3+TS中台管理系统

  • 面包屑
  • 标签导航
  • 侧边栏(权限菜单)
  • 自定义icon(Svg Sprite 图标)
  • 拖拽看板
  • 路由检索
  • 主题切换 (基于element-plus)
  • Screenfull全屏
  • 图片上传
  • 登陆注册(jwt)
  • 权限控制(系统管理:用户管理、角色管理、菜单管理)
  • 权限验证(页面权限、指令权限)

nest-serverless-graphql实战

  • 脚手架安装使用
  • WebIDE创建云函数
  • Serverless Framework
  • Serverless布署Egg项目
  • Serverless布署静态项目
  • Serverless布署Nest.js项目
  • Nest.js项目对接MySQL
  • GraphQL核心应用
  • 全栈项目实战

持续集成CI/CD

  • 掌握Docker的安装与镜像容器基础操作
  • 掌握如何使用docker安装Gitlab/Jenkins
  • 掌握使用Jenkins + Gitlab实现自动化构建
  • 搭配镜像仓库实现制品版本管理
  • 使用Ansible批量将制品部署到服务器

Kubernetes核心和项目实战

  • Kubernetes安装与配置
  • 集群的方式配置Master
  • 集群的方式配置节点
  • 直接布署nginx
  • 通过yaml布署mysql
  • 布署Pod、service以及ingress
  • 实现灰度发布
  • 实现滚动发布
  • 实现服务可用性探针
  • 机密信息的存储
  • 服务发现
  • 统一管理服务环境变量
  • 污点与容忍
  • 布署MYSQL数据库
  • 布署后端服务
  • 布署前端应用
  • 集成jenkins集成
  • 通过WebHooks推送触发持续构建

Egg.js源码和实战训练营

  • 路由和中间件
  • 控制器和服务
  • 模板渲染和插件系统
  • 定时任务和错误处理
  • 源码分析并手写Egg.js
  • Egg.js实战

Vue专业级后台管理系统

  • 建立Vue CLI4版本的环境搭建
  • 路由配置的模块化管理
  • element-ui的应用和组件模块化管理
  • axios的二次封装
  • 获取后台数据应用
  • 轮播图实战
  • 用户注册和登录权限的应用
  • 路由和菜单权限的渲染和处理
  • 对webSocket的封装和使用

typescript+ReactHooks实现珠峰课堂

  • 用webpack搭建React+ts环境
  • 路由配置和使用antd4搭建布局
  • 移动端使用rem和flex进行布局
  • 实现首页头部导航效果
  • express+ts实现后端项目
  • 实现个人中心和用户注册登录的功能
  • 实现首页加载,防抖节流,虚拟化列表的功能
  • 实现购物车效果
  • 实现服务器部署功能

微信小程序实战

  • 用express实现后台
  • 全局配置每个页面
  • 实现防抖节流,列表优化功能
  • 实现购物车功能
  • 获取微信头像等相关权限

Antv/G6实现思维导图实战

  • 用G6绘制实现鼠标、键盘事件监听伪代码功能
  • 实现图标展开和收缩功能
  • 实现自定义边框,添加和编辑文案功能
  • 控制开口方向布局,实现控制按钮样式
  • 对节点事件的监听和实现修改文案和添加子节点功能

从零实现脚手架cli实战

  • 脚手架项目创建
  • 解析命令行参数
  • 实现create命令
  • 实现config命令
  • 项目发布和部署到npm

nestjs基础到实战项目实战

  • 了解nestjs的脚手架及其常见命令
  • 了解nestjs中依赖注入、模块、生命周期等知识
  • 熟练对ejs模板、cookie和session的使用
  • 熟练掌握数据库中表、外键和事务等知识
  • 熟练掌握实现增删改查功能
  • 熟练掌握TypeORM在nestjs的应用
  • 熟练掌握nestjs的守卫拦截和过滤器的使用
  • 守卫做用户鉴权,进行权限处理功能
  • RBAC权限系统项目,完整的前后台一体化项目

Typescript+React组件库实战

  • 搭建环境,制作颜色和排版
  • 完成发包流程
  • 实现Button、Icon、Avatar、Radio等组件
  • 实现轮播图、进度条、拖拽树组件等功能
  • 实现message、upload、分页和表格的组件
  • 使用hooks和ts技术栈完成本次项目

Vue3+ts组件库实战

  • 打包部署gitee的page服务
  • 手动实现vue3工程化和路由配置
  • 手动实现Button、Input、Radio、Icon等组件
  • 手动实现表格、表单、数据视图、导航等功能组件
  • 基于TS开发,按需加载,自定义主题
  • 组件性能优化,支持树组件和表格组件虚拟滚动
  • 可以专注开发,无需关心页面传参以及前进后退逻辑控制

前端全链路监控实战

  • 前端监控概述、sentry、前端监控系统架构、fee仓库
  • 配置打点服务
  • SDK的使用
  • 配置kafka和filebeat
  • 部署mysql和redis,修改fee,并部署server部分
  • 部署client部分,完成整体流程

就业面试与指导

  • 阿里面试官就业面试指导
  • 头条面试流程分享
  • 头条四轮面试真题演练

软技能

  • 大厂职级系统
  • 大厂能力模型
  • 大厂晋升流程
  • 时间管理和精力管理

课程截图