沉默的大多数: 为什么 Visual Basic 6 依然经久不衰

iamlaosong评:VB6.0是1998年推出的,距今将近20年了,虽然其后推出了VB.NET,但因其难度大大增加,反而用到人不多,导致VB6一直在用,网上甚至有很多人在讨论如何在win10上面安装VB6。虽然很多人鄙视VB6,但存在即道理,够用就好,VB6自然有其过人之处。本人也经常用VB或者VBA做些小工具,VBA其实也是VB的一个翻版,所以有人说,只要Excel还在,VB就会在。下面是一篇2012年的文章,作者David Platt,以风趣幽默的笔调说明了VB6为什么长久不衰。

==========================================

 

沉默的大多数: 为什么 Visual Basic 6 依然经久不衰

David Platt

 

David Platt

Microsoft 最近在 Windows 8 的整个生存期中延长了 Visual Basic 6 应用程序的“确实行得通”兼容性支持(请参阅本月的编辑寄语“老兵永远不死”)。 Visual Basic 6 于 1998 年首次推出,因此,它的应用程序至少具有 24 年支持的生存期。 与 Microsoft .NET Framework 1.0 (2002) 对比一下,就会知道它的时间有多么长了,后者与 Windows 7 (2009) 都不兼容。

我的一个名叫 Eric 的学生曾经开玩笑说,Visual Basic 6 是 Windows 生态系统中的“杀不死的蟑螂”。 这个比喻去可能比您想象的更深入。 蟑螂是很成功的,因为它们非常简单。 它们在自己的小生态环境中只做它们需要做的,仅此而已。 Visual Basic 6 在自己的小市场环境中做它的创造者要求它们所做的: 使经验较少的程序员能够快速开发有限的程序。 它从来就不是为开发复杂应用程序的程序员准备的。

Visual Basic 6 通过剥离基础 Windows 操作系统的复杂性来实现其目标。 简单的事情完成起来也会非常简单。 另一方面,它无法完成复杂的事情,如处理线程。 我使用 Visual Basic 6 的经验是: 如果我在 10 分钟内做不成,我就根本做不了。

Visual Basic 6 获得成功的另一个关键是,它具有一组有限的功能,学习起来轻松得多。 学习驾驶巴士所花的时间肯定比学开战斗机少得多。 成为很好的 Visual Basic 6 程序员所花的时间比成为很好的 C++(当时的主要替代产品)程序员少得多。

当 Microsoft 将 Visual Basic. NET 变成“功能完善的语言”时,公司为其配备了 C# 具有的所有功能(线程、后台操作和继承等),但复杂性也随之增加。 因此,它需要一组与 C# 编程相同的技能,学习起来也同样不会轻松。

Microsoft 内部人员之所以这样做是因为,他们以为这是苛求的 Visual Basic 6 社区的心声。 但是,Visual Basic 6 程序员代表了“沉默的大多数”,这是美国发明的一个流行语。 1969 年,美国总统理查德•尼克松在那个动荡的年代里用这个词来形容他的那些反对游行示威和秉承传统文化价值的支持者。 几乎所有 Visual Basic 6 程序员对 Visual Basic 6 提供的功能都很满意。 他们很高兴成为巴士司机: 下午 5 点下班 (天气好时甚至下午 4:30 就下班) 而不是工作到深夜;周末与家人一起娱乐,而不是拖着疲惫的身躯去办公室加班;早早与家人一起上床休息,而不是与另一个程序员通宵工作,而早上仅仅啃几口凉比萨。 他们没有抱怨 Visual Basic 6 中缺少运算符重载或多态性,因此,他们没有多说什么。

但是,Microsoft 听到的声音来自 3% Visual Basic 6 巴士司机,他们一心想成为战斗机飞行员。 这些家伙花时间参加会议,在 CompuServe 论坛上提出问题以及为文章提供反馈。 他们并不仅仅满足于幻想向前面刚好挡住他们去路的汽车排气管发射响尾蛇导弹,而是要求 Microsoft 在他们的巴士上安装加力燃烧装置以及导弹、干扰装置和平视显示器。 Microsoft 还真就这样做了。

但为 Visual Basic 6 社区提供 Visual Basic .NET 就好象将土狼作为家狗驯养,然后将它放到森林里,并朝它大喊:“伟大的杀手,去捕杀上帝为你创造的猎物吧!”它们中的大多数会说:“开玩笑吧。 当我坐在火堆旁边的温暖座垫上,你为我打开一罐爱宝狗罐头。谁还愿意遭这个罪呀!”Visual Basic 6 继续朝向正确的方向前进。

当然啦,Visual Basic 6 也不是完美无缺的。 OnError Resume Next? 如果什么地方出了点小问题,是保持运行并看看会发生什么情况? 这可能不是明智之举。 但对于很大一类问题来说,由水平较低的人员(因而更便宜)快速(因而更便宜)开发有限(因而更便宜)的应用程序是一个重要的解决方案。

LightSwitch 现在正在试图填补这个小领域,但人们对它的评价褒贬不一(请参阅 bit.ly/n9crJj)。 它至少还要等十年。

Visual Basic 6 所做的工作还需要继续做。 直到且除非 Microsoft 推出了具有这些功能的其他工具,否则,仍会继续使用 Visual Basic 6。 我敢和你赌一杯啤酒,Microsoft 一定会在 Windows 9 和 10 中延长 Visual Basic 6 支持。

David S. Platt 在哈佛大学拓展学院以及世界各地的公司讲授 .NET 编程。 他著有 11 本编程书籍,包括“Why Software Sucks”(Addison-Wesley Professional,2006)和“Introducing Microsoft .NET”(Microsoft Press,2002 年)。 Microsoft 在 2002 年授予他“软件传奇人物”称号。他想知道是不是应该绑住女儿的两根手指,以便她学习八进制算法。 可通过 rollthunder.com 与他取得联系。

 

  • 3
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值