我们正在用 .Net 和 WPF 重写一个旧的 VB6 应用程序。我将帮助一些支持旧应用程序的同事加快 WPF 和 MVVM 的速度。我的背景是 .Net 和 C#,所以我不了解 VB6,但我想了解它们的来源。什么是 VB6 的原生设计模式(假设它有一个)?查看代码,它看起来可能是 MVC,但对吗?
问问题
974 次
3 回答
4
原始程序是桌面程序还是 Web 程序(经典 ASP)?
构架:
- 桌面 VB6 程序类似于 .Net WinForms。WPF 看起来很奇怪。MVVM 很可能是陌生的。
- 经典的 ASP。与 PHP 非常相似,但有一种调用 DLL 的方法。因此,像 PHP 一样,有些人开发了自己的有组织的框架,而其他人则编写了意大利面条。[有人可以改进我的这部分答案吗?]
你的同事喜欢阅读吗?你可以推荐
- Dan Appleman 为前 VB6 程序员迁移到 VB .NET的优秀书籍。现在十岁了,但还是很有见地。它不包括 MVVM 或 WPF。它针对的是 VB.Net 而不是 C#,但其中大部分仍然是相关的。
- Microsoft Visual Basic 6.0 迁移资源中心(极好的资源)
其他要记住的事情:VB6 是一种基于对象的语言(它具有对象、多态性和通过 的接口继承Implements
,但没有实现继承)。它是基于事件的,如 .Net。对象生命周期是确定性的,因为它使用引用计数。没有泛型。
于 2012-10-23T14:55:57.037 回答
3
它不使用设计模式。作为一种语言,VB6 是一种通用语言。IDE 和框架使用 RAD 方法,采用过程事件驱动风格。同样的事情也适用于 C#,除了它使用面向对象的事件驱动来代替。
于 2012-10-23T14:40:15.823 回答
0
我在这里尝试使用 VB6 来解释 MVVM 。
我想补充的一个提示是,对于 VB6 迁移项目,最好事先重构/修改代码。Visual Studio中的VB6到VB.net的转换向导虽然做得不错,但是痛点太多。通过修改 VB6 来避免它们比修复 VB.net 中的问题要容易得多。
于 2013-03-06T14:13:47.467 回答