2009-05-08 61 views
0

目前,我正在一个团队中开发C#中的新独立应用程序。最终的目标是将这个独立应用程序推广到以前开发的与同一流程相关的大型应用程序中。用于设计新应用程序的方法,最终将被合并到旧应用程序中

我的问题是这样的:我正在寻找有关方法或过程的信息,帮助A)更新代码的设计,特别是当旧代码不是最好的可维护系统时B)整合所述更新的代码应用。

显然会有什么具体的摆在那里,我们的应用是在设计独特的,因此将有细节没有方法可以帮助。不过,我有兴趣就这个话题获得一些很好的常识。

编辑: 的建议,到目前为止,重构旧代码,建立新的代码作为模块容器,覆盖在单元测试中的新老代码,都是很好的做法,一般是东西我尽可能练习。但在我看来,这些将是整体方法的个别部分。

回答

1

首先,您需要了解旧应用程序内部的工作原理。如何当你设计新的代码它管理工作流,会话,用户权限等

,你应格外小心在一个分层的方法来建立小,可重用的组件。当然,这并不是什么特别之处,优秀的程序员总是会试图做到这一点,但在给定的场景中它更重要。在某些时候,为了使它成为一个独立的应用程序,你必须复制旧应用程序中已经存在的某些部分,例如登录屏幕,工作流程管理等。确保您重复使用旧系统中的这些部件,或者使新部件API兼容并与主要业务逻辑分开。通过这样做,将新应用程序整合到旧应用程序中会更容易。

0

我不知道如果这是你正在寻找的,因为它涉及不方法论,而是应用架构的答案。

也就是说,如果你设计的独立托管作为应用程序组件重量轻的容器,你实际上是允许的组件更大范围内的在以后的迁移。

0

福勒建议重构旧代码。这需要一些时间,但:

A),它会更容易这段代码与新代码集成; B)你和你的团队会更好地理解旧代码。

在你的情况我也想覆盖你的代码,也许旧代码的单元测试。