所以我在遗留VB6中编写了一个相当复杂的应用程序,我的任务是更新到当前的VB.net以在更多的机器上工作。
我的问题是,如果尝试找到一个转换器来更有效地执行它,或者我应该咬紧牙关并尝试在夏天剩下的时间重写这个应用程序的野兽会更容易吗?
我不是贸易程序员(实际上是物理学家),而且自从高中以来我使用VB的经验很少......任何建议都非常感谢!
答案 0 :(得分:3)
转换器可能需要更少的时间才能达到工作最终结果,但仍可能需要大量修复。但是,最终,你最终会得到比它可能已经存在的更丑陋的代码。如果您有时间和精力这样做,那么在将代码翻译成新语言时,这是一个重新设计代码的绝佳机会。如果使用转换器,VB.NET中有许多新功能可能无法使用。这只是在你的情况下更重要的问题:速度或质量。
答案 1 :(得分:2)
如果您决定使用转化工具,我肯定会访问Microsoft Visual Basic 6.0 Migration Resource Center。它们链接到Visual Basic 6.0 to Visual Basic .NET Upgrade Assessment Tool - 您可以在转换之前使用它来评估VB6代码 - 以及其他信息。
您的两个主要选项是使用Visual Studio 2005或2008附带的转换向导 - MSFT未在VS 2010中包含它! - 或使用ArtinSoft’s Visual Basic Upgrade Companion (VBUC)的免费副本。我会推荐后者 - 它似乎是more sophisticated而不是MSFT VS向导 - 但它只会自由转换一个具有多达10,000行代码的项目。除此之外,您还必须支付$$以获得许可证。
答案 2 :(得分:1)
我不是贸易程序员
如果您想要学习VB.Net并且不容易被大型项目吓倒,请自行进行转换。根据应用程序的范围,您可以逐步执行转换,尽管很痛苦(我不推荐)。
否则,我建议使用转换工具。我不是VB.Net,所以其他人可能会有更好的建议。我不认为转换工具会100%准确,但应该为继续转换提供一个非常简单的平台。
答案 3 :(得分:1)
另一种选择是聘请转换公司。我们选择的那个叫做CodeArchitects。他们提供转换引擎和/或咨询服务,提供交钥匙解决方案(http://www.vbmigration.com/)。我让他们将vb6应用程序转换为我公司的vb.net。这很顺利,成本低于我花了几个月的时间(从开发/增强等)自己做。需要注意的是,您不会自己实际学习(我最终会从vb6过渡到vb.net)。 希望这会有所帮助..
答案 4 :(得分:1)
我的经验是,自动转换器不能很好地完成这类工作。
虽然这似乎是一项艰巨的任务,但我建议手工编码更可取。但是 - 不要低估这个任务。
我个人会对某人(他们自己承认)不是程序员从事这项工作感到紧张。
如果您还没有下载Microsoft Code Advisor Add-In - 这将提醒您在开始升级之前需要解决的一些更明显的问题。