加入一个拥有庞大代码库的现有团队可能会令人生畏。什么是最好的方法;
- 广阔; 尝试从代码中大致了解所有内容如何链接在一起
- 狭窄的; 一次专注于一小段代码,了解它们是如何充分工作的
- 选择一个功能来开发和学习
- 尝试从类图和 uml 中获得洞察力,如果可用(并且是最新的)
- 完全不同的东西?
我正在研究目前大约 20k 行的 C++ 应用程序和库(编辑:在宏伟的计划中很小!)。在行业中,我想您会得到一位经验丰富的程序员的介绍。但是,如果不是这种情况,您可以做些什么来尽快开始增加价值?
--
答案总结:
- 在调试模式下单步执行代码以查看它是如何工作的
- 与比您更熟悉代码库的人配对,轮流担任编码人员和观看/讨论的人员。在团队成员中轮换合作伙伴,以便知识传播。
- 编写单元测试。从你认为代码如何工作的断言开始。如果结果如您所料,您可能已经理解了代码。如果没有,你有一个难题要解决和/或进行调查。(谢谢Donal,这是一个很好的答案)
- 以与上述类似的方式检查功能代码的现有单元测试
- 阅读 UML、Doxygen 生成的类图和其他文档以全面了解代码。
- 进行小的编辑或错误修复,然后逐步建立
- 记笔记,不要跳进去开始开发;花时间理解比生成混乱或不适当的代码更有价值。
这篇文章是the-best-way-to-familiarize-yourself-with-an-inherited-codebase的部分副本