0

我继承了一个用 C#/.NET 2.0 编写的旧应用程序。(un) 幸运的是没有文档——甚至没有评论。因此,当我根据新需求对应用程序添加增强功能时,我也在构建一个关于应用程序做什么以及它如何做的心智模型——换句话说,就是架构。

我想知道那里有哪些工具可以“解构”应用程序并从原始代码到更高级别的东西?该应用程序在 OO 中并不是很重 - 实际上使用的对象之一称为“函数”。它主要是一堆方法 - 很多方法似乎突然冒出来。

我想将原始代码翻译成某种需求文档,说明应用程序的功能和执行方式。最好的方法是什么?有没有可以帮助我的应用程序?也许我应该/不应该包括的模板?也许您推荐的书籍/网站?目标是为我和未来维护应用程序的开发人员提供文档。

4

2 回答 2

1

如果您使用的是 VS 2010,您可以看到一个名称为:Architecture的菜单。使用此工具,您可以创建应用程序的依赖关系图,您可以按如下所述使用它:

于 2010-11-12T09:06:23.673 回答
1

就个人而言,我会从 Robert C Martin 的敏捷书和 Eric Evan 的领域驱动设计书开始。这些是理论书籍,但 Bob 叔叔的书专门讨论了如何修改代码以使其易于管理,就像您的情况一样。

将软件分层非常重要,这样您就可以开始删除依赖项,这将使一切变得非常简单且易于维护。

我是一名数据库专家,所以我从一个好的 ORM 开始,比如 Entity Framework 或 Fluent NHibernate。我更喜欢网站,所以我选择了 ASP.NET 的 MVC 2,然后开始编写这些书籍的所有部分,即数据存储库、用于提取数据的服务和用于推送数据的控制。MVC 很好地将数据关注点和作为您的屏幕的“视图”关注点分开。不久之后,您将拥有非常干净且易于维护的软件。

于 2010-11-12T04:24:11.177 回答