如何接手屎山
接手屎山代码,是每个程序员的必经之路。伴随的人员的流动,不可避免的需要去接手别人的代码。随着接手的人多了,代码也逐渐变得混乱和难以维护。
倒也并不是说自己代码写的有多好,随着工作越来越久,看自己以前写的代码也是依托答辩。
1. 典型特征
- 充满寄存器操作,魔鬼数字
- 中断嵌套
- 资源受限,调试信息匮乏
- 各种烧录流程
2. 总体原则
- 获取芯片手册、原理图,看配置方式(不过一般来说配置方式大同小异)
- 抓波形,确认代码行为
- 加入日志系统
- 硬件解耦,如果可以的话对代码进行分层,便于后续替换硬件
- 保持耐心
3. 代码部分
阅读和理解现有代码是至关重要的第一步。
- 宏观把握,先看目录,如果有文档(README、架构文档、API文档),那更是可遇而不可求。
- 找到入口,像main,启动脚本之类的
- 先不要管业务逻辑,先看调用关系,可以绘制关系图,用UML之类的工具,来帮助我们理解和加深印象
- 选择一个核心功能,跟踪代码路径
- 做好笔记和疑问点
- 如果能Debug就会更加清晰,如果不行可以增加一些日志
- 做一些小改动试试效果
- 先梳理框架,再去梳理细节