我有一个合同,我必须继续开发和旧的应用程序套件,这是在VB5编程的日子里。
我有bug需要修复,新特性需要开发。
所以我有几个选择:
还有别的选择吗?我该怎么办?
编辑:啊,而且,它依赖于ACCESS数据库,我想移到SQL。因为这是一个不符合逻辑的数据库,是90年代的一个愚蠢的程序员做的。
谢谢
发布于 2011-04-11 13:41:36
我每次做的选择都是重写,或者买一个合适的替代品,如果我能找到的话。
我尝试过从VB6到VB.NET进行增量升级,但我不喜欢这种方法,因为它只留下了我不想使用的ActiveX控件。重写更干净。
我不认为有从VB5到C#的转换器。您可能可以从VB5转到VB.NET,然后转换为C#,但根据我的经验,重写比尝试升级和修改已损坏的代码要费时少。
发布于 2011-04-11 13:41:59
没有可靠的方法来做,所以它是1或3)。
我认为你的客户不想付钱。但也许你可以在可靠性,支持等方面出售它。
否则你就会陷入困境
发布于 2011-04-11 13:43:05
一种方法是在C#中策略地重写代码的部分--您可以从您可能最容易出错的区域开始,创建C#程序集来镜像功能,然后通过COM互操作将这些代码公开给VB5代码。
一套好的单元测试将被强烈推荐为这种方法!
我听说迈克尔·羽毛写的“有效地使用遗产代码”是理解如何最好地解决这样一个问题的最好的书。
https://stackoverflow.com/questions/5622117
复制相似问题