理解未注释和复杂项目的最佳或最有效方式

Bal*_*lon 7 project-management projects-and-solutions project solution

我有没有评论的复杂项目.该项目在Java中编程,但有多个主类,使用几个.txt文件,如模板,并使用几个.bat文件.我不知道从哪里开始以及如何开始发现项目,因为我需要在该项目中进行一些更改.

Pre*_*gha 6

和其他人一样,我说这是一个缓慢的过程.

无论过去多次这样做,这是我的方法:

  1. 确定代码履行的许多要求.这可能会给你一些理由,说明为什么某些事情在你看起来更深的时候就是这样.找到这些的常用方法是寻找可用的任何测试.自动化的是最好的,但通常它们与评论一样缺失.

  2. 找到代码的入口点.这些将为您提供可以查看代码以查看不同输入如何影响流的位置.常见的入口点是代码加载"主要"类型功能,服务接口,网页回发等.

  3. 图表代码.寻找可以构建代码的黑/白盒图片的工具.对我来说这是非常宝贵的.我偶尔打印出大型物品,然后用标记和标尺攻击.您的目标是创建自己的代码流流程图(精神或其他方面).

  4. 使用上面(迭代)为您认为应该发生的代码构建一组输出,并将这些输出添加到您可能已经知道的输出中,例如日志,数据文件,数据库写入等.

  5. 最后,如果你有时间,最好在自动测试工具中创建一些手动测试,以验证上述情况.这就是我开始让调试器参与查看代码中的细节.

这种方法通常让我有信心做出改变.

请注意,这是迭代过程,可以根据您认为合适的部分代码或整体进行.我通常倾向于采用自上而下的方法开始,然后当我获得一些洞察力时,我深入研究细节变得势不可挡然后重复.然而,这只是因为我的思维以这种方式运作 - 你可能会有所不同.祝好运.


Cra*_*lus 0

首先是使用自动化的 uml 建模工具(如果您使用 eclipse,则可以使用插件),并开始创建各种类的 UML 图,以了解它们在高层中的关系并可视化代码。这已经帮助了很多次