Linux中國

微軟 Visual Basic 之興衰

根據 Retool 的設計總監 Ryan Lucas 所寫的新 歷史文章,開發微軟的 Visual BasicVB)的 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 進行了訪談,並把這個歷史整理的過程描述為一份「出於熱愛的努力」。他進一步指出:「我覺得當我們失去 Visual Basic 的同時,我們也失落了一些東西。在許多方面,過去的 25 年我們一直在追逐它做對的那些理念。」

Visual Basic 6.0,是夢想還是夢魘?

據 Lucas 透露,微軟在 2002 年發布 VB.NET 的時候,犯下了一個「非強迫性錯誤」。雖然語言看起來很像,但沒有遷移的路徑,新的 .NET 功能,如完全面向對象並不是 VB 開發者們想要的。使用率開始下降,到今天,VB.NET 在 .NET 編程中的地位已經落後於佔主導地位的 C#。此外,微軟已經失去了其在商業應用開發中的地位,.NET 只不過是諸多熱門技術之一。

然而,實際上,在 .NET 推出的時候,VB 已經開始衰退。它編程的便捷性在大型且複雜的應用中開始崩解,開發者不得不痛苦地學習像「公寓線程」這樣的奇特的 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 對於現稱為 「群眾開發者」 的人群所展現出的簡潔與高效,儘管有很多嘗試,一直難以複製成功。你也可以在 這裡 找到 更多 關於 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 譯者:ChatGPT 校對:wxy


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:Linux中國