如何快速上手新项目

Posted on Wed 04 May 2022 in Journal

Abstract 快速上手新项目的 30 条秘诀
Authors Walter Fan
 Category     learning note  
Status v1.0
Updated 2022-4-30
License CC-BY-NC-ND 4.0

1. 画出你的代码地图

  1. 代码的专家,文档在哪里?
  2. 主线是什么,支线是什么?
  3. 各个主要流程从哪里开始,到哪里结束?
  4. 代码对外的 API 和 Transport 是什么?
  5. 代码用到了哪些协议和标准?
  6. 代码的质量和风格如何?
  7. 代码的线程和网络模型是什么?
  8. 代码内部的组织和通信方式是什么?
  9. 各个主要功能模块的功能和位置在哪里?
  10. 如何构建,测试和部署代码?

2. 测试驱动,边干边学

  1. 按设计用例写单元测试用例 Arrange-Act-Assert
  2. 遵循代码规范编写代码,构建并运行单元测试
  3. 验证
  4. 按 API 设计写集成用例 Given-When-Then
  5. 编写 API 的处理和度量代码,构建并运行集成测试
  6. 按用户的需求用例写端到端测试
  7. 构建,部署并运行端到端测试
  8. 检查功能验证点
  9. 检查日志和各项度量指标 - Aggreate-Analyze-Action
  10. 分析并制定方案来解决发现的问题,回到第一步

3. 度量驱动,有的放矢

  1. 制定你的度量指标 Usage-Performance-Error
  2. 在你的代码中分解并记录这些度量指标
  3. 将度量指标聚合并发送出去
  4. 将度量指标分门别类存储起来
  5. 对这些度量指标进行 online 流式分析
  6. 对这些度量指标进行 offline 批量分析
  7. 对于分析结果设置必要的告警
  8. 对告警采取行动:回滚,降级,调整参数,切换集群等
  9. 生成定时分析报告通知给干系人
  10. 对报告采取行动:调整参数,添加保护,优化算法等

本作品采用知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议进行许可。