如何处理尚未记录的现有项目?

时间:2011-10-27 17:18:18

标签: php codeigniter project maintenance

我只参与了从头开始的项目,但现在我开始研究一个没有文档和没有指导的预先存在的项目。所有参与该项目的人都不见了,我的客户希望我开始研究这个项目。 常识是从主页开始,并继续学习它的位置和位置。

该网站建立在Codeigniter(PHP)上,有超过500页的页面,最多有900-1100行代码,还有几个自定义选项。 是否有任何有效且非耗时的方法可以开始?任何可能有帮助的工具?

2 个答案:

答案 0 :(得分:3)

我曾经遇到过一两次这种情况。我不认为有任何工具可以真正帮助,因为文档通常是程序员和代码之间的粘合剂,但我还没有真正搜索它们。

我有两个评论。首先,这将花费你很多时间。一个很多。基本上,你是逆向工程。在给出估计时(如果需要),请考虑到这一点。

其次,最好的办法是随时记录事情。您遇到的每个功能都记录了您认为应该执行的操作。这样,您可以回顾一下您已经检查过的函数,而无需再次检查它们。如果您不知道函数内部的作用,请暂时保留它并转到其他函数或方法。

最后,如果没有任何文档,你所能做的就是在代码和运行时逐步完成程序(假设它运行完毕),这样你就可以猜测它应该做什么。记录较小的功能,逐步完成大功能/类。存储您遇到的任何笔记。在可能的情况下进行清理,但只有在您对所清理的部件应该具有的SOLID感觉时才会进行清理。这可能需要一些时间。

不确定这真的有帮助,但这是一个糟糕的情况。我只能希望你的代码比文档更好。如果不是......那么,你还必须考虑重写零件的时间。

祝你好运。

答案 1 :(得分:2)

使用Doxygen对于获取项目结构的可读/可浏览大纲非常有用,它在标准安装中支持PHP。它生成一个HTML文档,该文档在程序中的各种依赖项之间具有超链接。

运行它非常简单:

cd <project-top-level-directory>
doxygen -g
doxygen Doxyfile