我被赋予了将旧的VB6程序转换为C#的任务。不幸的是,该项目有8个模块,每个模块都有很多代码,还有大量嵌套的IF语句,只是计划糟糕的设计。
我希望找到一个能够获取所有文件并生成某种UML图的工具来显示代码的基本流程,以便我开始调试它。
该程序采用了许多不同的文件类型,所有这些文件类型的信息略有不同,但它似乎只是在一些大的方法中处理它们,这些方法根据信息的不同来调用不同的方法。
我知道我将不得不采取一些输入文件并逐步完成所有输入文件以查找它在每种情况下所做的事情,因此我可以找到相似之处和不同之处,以便能够生成更易于维护的更优雅的解决方案。
感谢您提供的任何帮助
答案 0 :(得分:3)
this工具可用作Visual Studio的插件,用于生成VB6项目并将其反向工程为Visual UML图。
答案 1 :(得分:2)
不幸的是,对于一个大项目来说,这样做并不容易。
您可以使用类似Sparx Enterprise Architect的内容生成类图,但是在开始有意义之前,您将不得不花一些时间进行清理。在项目的某个特定部分而不是整个项目中,你可能会有更多的运气。
答案 2 :(得分:0)
谢谢Konstantinos和Ilya Kochetov,
我正在下载该工具。
我已经给了EA一个类图表,并认为它会有所帮助,如果UML工作,那么我认为它们将很好地协同工作。
谢谢RS Conley,我们想要完全重新编写应用程序,因为它的设计非常糟糕,并且自创建以来需求已经改变。我们正在考虑,如果我们检查它的作用,它是如何做的以及许多其他类似的应用程序如何工作,我们可能会创建一个更通用的程序,可以处理它们。这将允许我们将许多其他遗留应用程序整合到.Net,我们需要前往。
答案 3 :(得分:0)
Visio 2000专业版或企业版拥有此built in,如果您拥有它们或可以获得它们。我不知道Visio 2007是否仍然具有此功能 - 您可以尝试60-day trial。
答案 4 :(得分:-1)
更好的方法是编写单元测试并将代码重构为更可转换的设计。 Martin Fowler和NUnit的重构是明星的好地方
此处将更全面地讨论此问题以及上述链接。