写点什么

案例分析:移植大型 VB6 应用程序到.NET

  • 2009-12-17
  • 本文字数:987 字

    阅读完需:约 3 分钟

一个 IT 服务提供商花了 9 个月时间把一个由 950000 行 VB6 代码组成的 ERP 应用程序移植到.NET。

处理旧版 VB6 应用程序有以下 5 个选择:

  • 不作修改——如果应用程序甚少更新或更改的话
  • 用新程序取代——如果有类似的商业或开源应用程序或服务的话
  • 移植到.NET——使用升级工具把所有 VB6 代码转换成相应的.NET 代码
  • 使用.NET 扩展——使用.NET 添加新功能。可以给 VB6 应用程序添加.NET 窗体和控件,详情请查看: Interop Form Toolkit 2.0 (PDF) 帮助文件
  • 重构——用.NET 重写所有代码。在旧版 VB6 应用程序的代码不健全或者有需要重写应用程序的时候,即应用程序需要大量修改以满足新的需求或源代码不可用的时候,这是一种可行的方法

若移植是必由之路,以下则有三个备选方案:

微软最近公布了一个把 950000 行 VB6 代码移植为.NET 的成功案例。该过程由澳洲的IT 公司 SiS 主持使用 Code Architect 的 VB 移植搭档耗时 9 个月完成。该项目是一个十年前构建的 ERP 项目,由 33 个应用程序组成。这个应用的最佳解决方案是采取移植的方式而不是定制 ERP 应用或重写整个项目。不建议定制商业的 ERP 项目,因为它需要花费 3 至 5 百万欧元,且需耗时 2 年并没有任何供应商保证实现所有原始功能。

SiS 从中选取 25000 行代码并尝试用多种工具进行移植。VB 移植搭档是最好的工具,代码块的移植、编译和运行总共只需 25 小时。他们还声称 VB 移植搭档不需要过多的手动干预也不会影响用户界面的外观。

整个 ERP 应用程序由 3 个开发人员花了 9 个月的时间来完成,“3650 个工时用于移植代码,3400 个工时用于检查和重构代码,1300 个工时进行测试”。检查代码是必要的环节,因为将来代码有可能会需要进一步完善,而初次参与的开发人员未必能再次参与其中。该项目总共耗费 75000 欧元,远远低于重新订做 ERP。过程按以下方式进行:完成一个模块之后,它就会与余下的 VB 应用程序集成直到整个应用程序移植到.NET 为止。

对 VB6 投入大量资源的公司现在也可以通过移植到.NET 来利用他们的旧资产。微软及其合作伙伴似乎已为他们准备好了所需的工具。

查看英文原文: Case Study: Migrating a VB6 Large Application to .NET

2009-12-17 04:492971
用户头像

发布了 87 篇内容, 共 22.6 次阅读, 收获喜欢 1 次。

关注

评论

发布
暂无评论
发现更多内容

容器化 | 在 Rancher 中部署 MySQL 集群

RadonDB

MySQL 开源 容器化 rancher RadonDB

Google Cloud X Kyligence|如何从业务视角管理数据湖?

Kyligence

数据湖 智能多维数据库

基于Flink CDC打通数据实时入湖

数据社

签约计划第三季

2022年企业直播行业发展洞察

易观分析

数据分析 报告 企业直播

详细讲解https证书openssl公钥私钥以及ssh公钥私钥的生成以及使用

Geek_6516e4

签约计划第三季

参加web前端培训入门学习

小谷哥

Dapr相比于SpringCloud和Istio的优势在哪?

王小凡

Java 程序员 istio SpringCloud 微服务框架

大数据培训技术入门

小谷哥

命里有时终须有--记与TiDB的一次次擦肩而过

TiDB 社区干货传送门

人物访谈 社区活动

【堡垒机小知识】硬件堡垒机是什么意思?其与云堡垒机有什么区别?

行云管家

云计算 网络安全 数据安全 堡垒机 云堡垒机

大数据培训机构应该注意什么

小谷哥

兆骑科创赛事活动承办,项目路演,人才引进平台

兆骑科创凤阁

共建共享数字世界的根:阿里云打造全面的云原生开源生态

阿里巴巴云原生

阿里云 容器 云原生 开源生态

多元宇宙:重塑新商业格局

智捷云

元宇宙 智捷云 智捷云科技

TiCDC同步延迟问题处理

TiDB 社区干货传送门

实践案例 管理与运维 故障排查/诊断 大数据场景实践

TiDB 操作实践 -- 备份与恢复

TiDB 社区干货传送门

备份 & 恢复

TiDB升级与案例分享(TiDB v4.0.1 → v5.4.1)

TiDB 社区干货传送门

实践案例 版本升级 集群管理 管理与运维

CSDN TOP1“一个处女座的程序猿“如何通过写作成为百万粉丝博主

Lansonli

7月月更 如何写作

TiCDC迁移-TiDB到MySQL测试

TiDB 社区干货传送门

管理与运维

StarRocks 2.3 新版本特性介绍

StarRocks

参加Java培训学习哪些方法

小谷哥

TiFlash 源码阅读(五) DeltaTree 存储引擎设计及实现分析 - Part 2

TiDB 社区干货传送门

兆骑科创海外高层次人才引进平台,企业项目对接,赛事活动路演

兆骑科创凤阁

LED透明屏和LED玻璃显示屏区别

Dylan

LED显示屏 户外LED显示屏 led显示屏厂家

web前端培训好还是自学前端

小谷哥

PD 源码分析- Checker: region 健康卫士

TiDB 社区干货传送门

TiKV 源码解读

我和 TiDB 的故事 | TiDB 对我不离不弃,我亦如此

TiDB 社区干货传送门

人物访谈

QCon大会广州站它来了!独家定制双肩背包等你领取!

InfoQ写作社区官方

Qcon

我和 TiDB 的故事 | 缘份在,那就终是能相遇的

TiDB 社区干货传送门

人物访谈 社区活动

新四化时代来袭,亚马逊云科技赋能汽车行业加速创新

Lily

面试?进大厂?还得靠这份Java面试指导手册

王小凡

Java 面试 JVM Java多线程 秋招

案例分析:移植大型VB6应用程序到.NET_.NET_Abel Avram_InfoQ精选文章