重写旧的/不推荐使用的代码java [关闭]
Posted
技术标签:
【中文标题】重写旧的/不推荐使用的代码java [关闭]【英文标题】:Rewriting old/deprecated code java [closed] 【发布时间】:2014-07-19 02:01:50 【问题描述】:我工作的公司有一段他们想重写的代码。它使用 Java/Java 服务器端面。它的问题是它很旧并且使用了贬值的代码,是在一个不再可用的 IDE 中编写的,并且不能很好地与 netbeans 一起使用,而且它首先是一种草率的编码。没有人真正知道它的结构,而且文档也很有限。
在开始重写之前,我们希望找到旧程序的结构并获得一个像样的 UML 图。在这种情况下,哪些工具最有效?到目前为止,我们已经研究了一个名为 Agilej。
对不起,如果这有点模糊,我只是一个低级的实习生,还没有填写所有内容=p
【问题讨论】:
【参考方案1】:你可以使用JArchitect,一个相当完善的java静态分析工具
【讨论】:
【参考方案2】:我没有提供可点击的超链接,因为您应该能够通过网络搜索轻松找到它们,并且可能有超过 1 个对您有用的链接
Sparx Systems Enterprise Architect 具有非常强大的逆向工程能力。 Java(也是编译的二进制 JAR)在支持的语言列表中。
几年前我曾使用 Enterprise Architect 的逆向工程功能来帮助我们理解和设计对遗留 C++、QT 代码的修改。
Enterprise Architect 能够自动检索类模型。然后我使用原始类模型拖放绘制了其他几个图表,包括我感兴趣的类以及我需要的详细程度等。
在其他静态代码分析工具(例如代码流可视化)的范围内,我不知道哪个工具特别支持Java足够好。快速谷歌积分,例如Coder Gears JArchitect。在过去的项目中,我提到过我们使用 Doxygen 的自动生成文档。其中一部分还有一些自动生成的 graphviz 依赖关系图。
为了阐明设计和可视化流程(尤其是大型遗留功能),我发现 Rapid Quality Systems Code Rocket 流程可视化器很有用
一旦您通过各种逆向工程工具掌握了基本事实,下一步就是检查它们,注释什么是未知的,什么在做什么,基本上应用一些正式的代码审查 方法(例如 Fagan 检查 或其一些衍生方法)。
(如果您提前考虑后续行动所需的可交付成果,使用各种工具的评估版本可能就足够了。我猜该公司不打算给您一个 >0 美元的预算)
敏捷建模站点可能有一些很好的重构技巧和一些最小的 UML 映射指南,例如开始在Agile Legacy System Analysis and Integration Modeling
【讨论】:
以上是关于重写旧的/不推荐使用的代码java [关闭]的主要内容,如果未能解决你的问题,请参考以下文章