第30周
脚手架发布模块架构设计和核心流程开发
完成项目开发后,需要进行前端发布,脚手架的@imooc-cli/publish子项目将完成项目和组件的标准发布流程,本周将完成publish包的架构设计和核心流程开发
课程安排:
1、掌握项目/组件标准发布流程架构设计和流程图绘制
2、掌握自动化git流程架构设计和实现细节
3、掌握云构建实现原理和实现细节
4、掌握项目/组件发布原理和实现细节
5、完成public子项目创建和主流程开发
第31周
脚手架发布模块git自动化流程开发
本周将完成项目发布过程中的 git flow 流程开发,遵循标准的 git flow 流程,学会可快速改造和优化日常开发中的 git 处理流程,巩固 git 的各种使用技巧和方法。
课程安排:
1、掌握 git 操作方法和 git flow 流程
2、封装通用的 git 处理类 Git
3、掌握 git 处理过程中的缓存结构设计
4、掌握 git 处理过程中的各种异常流程
5、完成 Github & Gitee Open API 接入
6、Git 类准备阶段开发,完成各种 git 配置初始化
7、Git 类初始化阶段开发,完成 git 仓库初始化、remote 自动关联、强制合并
8、并远程代码等功能
9、Git 类分支自动比对功能开发,完成代码冲突检查、stash 区自动检查
10、自动同步 master 分支等功能
11、完成 Git 类代码自动提交功能开发
第32周
脚手架发布模块云构建系统开发
git flow流程完成后,我们将进入脚手架中最重要也是难度最高的一个环节,即云构建系统开发,本周我们通过egg.js+WebSocket+Redis最终实现完成云构建模块开发。
课程安排:
1、封装通用的云构建类CloudBuild
2、掌握WebSocket通信协议和开发方法
3、应用egg-socket.io插件快速接入WebSocket服务
4、掌握Redis缓存数据库的应用
5、应用egg-redis插件快速接入Redis服务
6、完成CloudBuild准备和预发布阶段开发,完成发布前配置和各类检查
7、掌握服务端CloudBuild处理流程和实现逻辑
8、服务端CloudBuildTask类封装,完成预处理、源码下载、云构建等流程开发
9、大作业:CloudBuild构建和依赖安装指令动态化功能设计和实现
第33周
脚手架发布模块云发布功能开发
脚手架云构建模块开发完成后,本周将继续完成项目的云发布流程开发。
课程安排:
1、掌握前端云发布逻辑实现
2、掌握oss入门使用方法
3、完成服务端oss API接入
4、掌握oss域名绑定+cdn接入
5、掌握项目预发布和正式发布流程
6、掌握项目回滚等异常流程处理
7、完成发布后自动打tag和开发分支删除功能
8、完成发布流程整体开发和联调
9、大作业:项目回滚+多版本发布功能架构设计和具体实现
第34周
脚手架组件发布功能开发
项目发布流程已经调通,本周将完成组件发布流程开发,组件发布流程和项目不同,主要差异在于:组件需要发布到npm和组件信息需要落库,所以需要不同的处理方式。
课程安排:
1、完成组件git flow流程开发
2、掌握组件构建和发布流程设计
3、掌握组件预览功能设计
4、完成组件构建和发布流程开发
5、完成组件预览功能开发
6、掌握RDS开通和使用方法
7、掌握egg.js+mysql的开发方法
8、完成组件相关API的开发方法
9、完成组件发布全流程联调
10、完成脚手架整体发布和上线
第35周
组件平台开发
本周将基于umi完成组件库前端部分创建,同时结合react hook开发组件库的前端页面,并将组件库发布上线。
课程安排:
1、掌握umi项目的开发方法
2、掌握react hook的开发方法
3、完成antd组件库集成
4、完成组件列表页开发
5、完成组件详情页开发
6、完成组件平台上线
第36周
项目单元测试用例设计和开发
讲解如何开发单元测试用例,并开发测试代码。
课程安排:
1、掌握脚手架单元测试库mocha
2、掌握测试用例设计技巧
3、完成脚手架单元测试用例设计
4、完成init库测试用例开发和调试
5、完成publish库测试用例开发和调试