微软 Visual Basic 之兴衰
微软仍努力追寻着 VB 对于现称为 “群众开发者” 的人群所展现出的简洁与高效，尽管有很多尝试，一直难以复制成功。
Visual Basic VB
223.104.103.13
VB很好用，只是微软不再支持并且限制让他落寞，例如现在电脑性能是以前数倍，但excel中的VBA程序经常卡死
来自223.104.103.13的 Mobile Safari 14.0|iOS 17.1 用户
2024-01-13T09:52:24.000
微软仍努力追寻着 VB 对于现称为 “群众开发者” 的人群所展现出的简洁与高效，尽管有很多尝试，一直难以复制成功。
![](/data/attachment/album/202312/26/155918bqxx5bbcbqbbpqwp.jpg)


根据 Retool 的设计总监 Ryan Lucas 所写的新 [历史文章](https://retool.com/visual-basic)，开发微软的 Visual Basic（VB）的 Alan Cooper 最初将其设想为一个“外壳构造工具包”。那是在 1987 年，当时 Windows 正在赢得越来越多的用户，但为这个操作系统编写应用却困难重重。它的原型被命名为 Tripod，能够将按钮和列表框这样的对象拖放到设计界面上。


Lucas 的文章提到，随着时间的推移，这些设计对象的命名从 “waldos” 变到 “gizmos”，又改为“controls”。


当这个项目被微软 CEO 比尔·盖茨评审时，他决定将其与即将发布的 Windows 3.0 捆绑出售。然而这未能实现，原因不太清楚，可能是对于 OS/2 的政策争论（据说 OS/2 有望取代 Windows），或者是与开发 Windows 的团队产生的冲突。


实际上，这个当时开发代号被称为 Thunder 的项目，变成了一个商业语言项目，并在 1991 年作为 BASIC 的一个版本发布。文章里记载：“最终产品让 Cooper 感到震惊，因为他非常厌恶 BASIC。”


尽管如此，这个项目标志着一个广受欢迎的编程模型的诞生，VB 对 Windows 甚至整个软件开发行业影响深远。Lucas 写道：“到 1998 年 Visual Basic 6.0 发布的时候，其地位无人能敌：所有 Windows 上进行的商业应用程序编程中有三分之二都是用 Visual Basic 完成的。全盛时期，全球近有 350 万的 VB 开发者，是 C++ 程序员的十倍还多。”


Lucas 对 Alan Cooper 及原微软 VB 团队的 Micheal Geary 进行了访谈，并把这个历史整理的过程描述为一份“[出于热爱的努力](https://twitter.com/ryanlucas/status/1636408576473452544)”。他进一步指出：“我觉得当我们失去 Visual Basic 的同时，我们也失落了一些东西。在许多方面，过去的 25 年我们一直在追逐它做对的那些理念。”


![Visual Basic 6.0，是梦想还是梦魇？](/data/attachment/album/202312/26/160109zrs243l7s6rssr4s.jpg)


据 Lucas 透露，微软在 2002 年发布 [VB.NET](http://vb.net/) 的时候，犯下了一个“非强迫性错误”。虽然语言看起来很像，但没有迁移的路径，新的 .NET 功能，如完全面向对象并不是 VB 开发者们想要的。使用率开始下降，到今天，[VB.NET](http://vb.net/) 在 .NET 编程中的地位已经落后于占主导地位的 C#。此外，微软已经失去了其在商业应用开发中的地位，.NET 只不过是诸多热门技术之一。


然而，实际上，在 .NET 推出的时候，VB 已经开始衰退。它编程的便捷性在大型且复杂的应用中开始崩解，开发者不得不痛苦地学习像“[公寓线程](https://learn.microsoft.com/en-us/windows/win32/com/processes--threads--and-apartments)”这样的奇特的 COM 概念。VB 应用还必须通过直接调用 Windows API 来增强，有许多奇怪的语言特点，即使是 Bruce Mckinney 在他的《Hardcore Visual Basic》这本书的最后一章也叫它《抄起你的斧头》。


最后，一些 VB 开发者在 1990 年代末期发现，Borland 公司的一款名叫 Delphi 的工具在几乎所有方面都优于 VB：更强大，运行速度更快，编译出来的原生代码应用程序更易于部署。Delphi 的表单设计师是受 VB 影响的，并且它的发明者 Anders Hejlsberg 后来加入了微软，创建了 C# 以及后来的 TypeScript。


微软尽力让 VB 可用，确保其运行环境到今日仍被支持，并持续让 Office 中的宏语言使用它。而 .NET 平台在应对 Java 的挑战方面比 VB 更好，甚至最终以 .NET Core 的形式成为了跨平台解决方案。


但这些并没有动摇 VB 的卓越和影响力。微软仍努力追寻着 VB 对于现称为 “群众开发者” 的人群所展现出的简洁与高效，尽管有很多尝试，一直难以复制成功。你也可以在 [这里](https://www.theregister.com/2017/02/02/our_strategy_for_visual_basic_has_shifted_microsoft_to_focus_on_core_scenarios/) 找到 [更多](https://www.theregister.com/2014/12/10/hey_dont_forget_visual_basic_says_microsoft_open_source_and_new_features_coming/) 关于 VB 的命运和缓慢死亡的信息。


*（题图：DA/7f8b8625-f569-418b-b06d-9437435473fd）*




---


via: <https://devclass.com/2023/03/20/microsofts-visual-basic-why-it-won-and-why-it-had-to-die/>


作者：[Tim Anderson](https://devclass.com/author/tanderson/) 译者：[ChatGPT](https://linux.cn/lctt/ChatGPT) 校对：[wxy](https://github.com/wxy)

