首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >“逆向工程”应用架构

“逆向工程”应用架构
EN

Stack Overflow用户
提问于 2010-11-12 12:03:33
回答 2查看 411关注 0票数 0

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

我想知道有什么工具可以“解构”应用程序,并从原始代码转移到更高的级别?这个应用程序的面向对象并不是很重--事实上,其中一个使用的对象被称为“函数”。它主要只是一堆方法--很多方法似乎是凭空跳出来的。

我想把原始代码翻译成某种需求文档,说明应用程序做了什么以及它是如何执行的。做这件事最好的方法是什么?有没有什么应用程序可以帮助我呢?也许我应该/不应该包含的模板?也许是你推荐的书/网站?目标是为我和维护该应用程序的未来开发人员提供文档。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-11-12 12:24:11

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

对你的软件进行分层是非常必要的,这样你就可以开始删除依赖项,这将使一切变得非常简单和易于维护。

我是一个数据库专家,所以我从一个很好的对象关系管理开始,比如实体框架或流畅的NHibernate。我更喜欢网站,所以我选择了ASP.NET的MVC 2,然后开始编写这些书的所有部分,即数据存储库、拉取数据的服务和推送数据的控件。MVC很好地分离了数据关注点和屏幕上的“视图”关注点。用不了多久,你就会拥有非常干净和易于维护的软件。

票数 1
EN

Stack Overflow用户

发布于 2010-11-12 17:06:24

如果你使用的是VS2010,你会看到一个名为:架构的菜单。通过这个工具,你可以创建应用程序的依赖图,你可以按照下面的描述使用它:

  • http://blogs.msdn.com/b/jennifer/archive/2010/05/11/visual-studio-2010-how-to-understand-your-code-using-dependency-graphs-sequence-diagrams-and-the-architecture-explorer.aspx
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4161524

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档