dpt3/养成计划1.md

87 lines
2.7 KiB
Markdown
Raw Normal View History

2025-02-14 06:23:45 +00:00
### **0到1级基础认知**
**目标**:建立模块基础认知,掌握开发调试工具链
1. **架构学习**
- 阅读文档核心概念(数据流、线程模型、关键接口)
2. **代码初探**
- 使用gdb调试一个核心函数并解释其调用栈
- 提交填空式代码报告
2025-02-13 12:52:34 +00:00
```
关键函数________
函数的作用________
发现的疑问________
```
2025-02-14 06:23:45 +00:00
3. **运行验证**
- 运行UT(ASAN),新增一个测试用例,并上库
- 修改现有测试用例输入值,观察结果变化
4. **问题定位**
- 阅读模块定位手册,并绘制故障依赖关系图
**交付物**代码报告、UT运行&上库报告、故障依赖关系图
------
### **1到2级熟悉逻辑**
**目标**:理解业务逻辑,掌握问题定位方法
1. **模拟问题分析**替代实际Bug修复
- 分析历史Bug报告编写假设性修复方案无需提交代码
- 复现一个已知简单问题(如空指针崩溃)
2. **依赖分析**
- 绘制模块依赖图(调用方/被调用方+协议类型)
- 分析接口性能测试关注QPS/RT
3. **日志追踪**
- 根据日志关键词定位一次完整请求链路
- 编写日志分析速查表(错误码→可能原因)
**交付物**Bug分析文档、模块依赖报告、性能分析报告、日志速查表
------
### **2到3级深度掌握**
**目标**:独立开发核心功能,解决复杂问题
1. **核心逻辑开发**
- 参与模块的核心功能开发(如实现一个新特性),并记录开发过程。
2. **性能分析**
- 使用`perf`分析模块性能热点。
- 分析性能瓶颈等历史问题,总结解决模式。
2025-02-14 08:42:19 +00:00
3. **设计限制**
- 整理内存、调度等资源对模块的限制
- 对应的输出相应的模块设计原则
4. **规约掌握**
- 涉及标准或者协议的需要输出规约或协议的概要分析pcie、nvme
5. **故障模式**
- 总结并输出各种错误的处理方式
6. **架构改进**
2025-02-14 06:23:45 +00:00
- 组织一次技术分享,讲解模块的架构设计和优化思路。
- 分析模块历史问题根因分类。
2025-02-14 08:42:19 +00:00
**交付物**:功能代码(通过审查)、性能报告、分享材料、通过现场考察
2025-02-14 06:23:45 +00:00
------
### **3到4级技术主导**
**目标**:主导架构演进,把控技术方向
1. **系统级设计**
- 主导或参与模块的技术创新项目(如引入新技术),并记录项目过程。
2. **架构分析**
- 分析模块的历史技术决策,评估其成功或失败的原因。
- 根据限制条件分析性能的极限。
- 组织一次技术分享,展示模块的技术深度和未来方向。
2025-02-13 12:52:34 +00:00
2025-02-14 06:23:45 +00:00
**交付物**:代码(上库)、分析报告