微軟宣布不再發(fā)展 Visual Basic 語言,它也曾輝煌過
近期,微軟 NET 團(tuán)隊(duì)在開發(fā)者博客中宣布,他們雖然還會(huì)繼續(xù)在 .NET 5.0 上支持 Visual Basic ,但不再將 VB 作為一門獨(dú)立的語言發(fā)展(Going forward, we do not plan to evolve Visual Basic as a language)。
雷鋒網(wǎng)AI源創(chuàng)評論了解到,.Net 5 是一套可以為 Windows、Linux、macOS、iOS、tvOS、Android、Web 等提供統(tǒng)一運(yùn)行環(huán)境,橫跨云端、IoT、本地游戲等的大迭代版本,由微軟在去年 Build 大會(huì)宣布,并在今年的 3 月 17 日發(fā)布了第一個(gè)預(yù)覽版本。
第一個(gè)預(yù)覽版本
NET 5 VB 將支持類庫、控制臺(tái)、Windows Forms、WPF、Woker Service 和 ASP.NET Core Web API。
“展望未來,我們不打算繼續(xù)演化 VB 這門語言,而是將精力放在改進(jìn)穩(wěn)定性、以及保持 .NET Framework版本和 .NET Core 的兼容性?!碑?dāng)然由于平臺(tái)差異,VB 在兩個(gè)版本上會(huì)逐漸展示出差異。
VB 也曾輝煌VB 曾經(jīng)也輝煌過,它是第一個(gè)支持可視化界面設(shè)計(jì)的語言。
雷鋒網(wǎng)(公眾號:雷鋒網(wǎng))AI源創(chuàng)評論了解到,VB 的前身是 Quick BASIC ,由微軟公司在 1987 年推出。若再往前追溯,Quick BASIC 還是 BASIC 的繼承者。BASIC 語言誕生于 1971 年,設(shè)計(jì)目的就是面向初學(xué)者,其時(shí)的 Fortran 和 Algol 60 語言很難被非理工科生掌握。
Quick BASIC 是 DOS 下的開發(fā)語言,后來隨著 Windows 系統(tǒng)的推出加入了圖像化設(shè)計(jì),1991 年 4 月,微軟將新的版本改名為:Visual Basic,一經(jīng)問世,便得到許多程序員的青睞。1998 年發(fā)布的 VB 6.0 是一個(gè)應(yīng)用非常廣泛的版本。
然后.NET 時(shí)代來了。2001 年,VB 遷移到了.NET 平臺(tái)上,取名 VB .NET。VB .NET 對 BASIC 語言特性進(jìn)行了重大改進(jìn)。
但也是這個(gè)版本割裂了 VB 的陣營,一部分開發(fā)者去用了.NET 版本,另一些則堅(jiān)持使用過去 VB,如經(jīng)典的 VB6。開發(fā)者表示兩種語言差別頗大,前者更像 java,更面向?qū)ο蟆?/p>
而微軟選擇了.NET 。2005 年,微軟宣布將不再對非 .NET 版本的 VB 提供免費(fèi)支持,百名 MVP 上書抗議也未果。后來,微軟在 2010 年將兩個(gè)版本又融入了 Visual Studio。
在內(nèi)斗中取勝的 VB .NET,但沒有抗住外部的對手—— C# 。C# 于 2000 年和 .NET 開發(fā)平臺(tái)一起由微軟發(fā)布。.NET 開發(fā)平臺(tái)支持多種語言,其中 C# 是主語言。
隨著時(shí)間的推移,專業(yè)開發(fā)者越來越傾向于使用 C#,許多 VB 的用戶也干脆放棄了更復(fù)雜、功能強(qiáng)大的 . NET 版本。到了今天,微軟幾乎所有的相關(guān)開發(fā)文檔都用 C#,VB 源代碼的例子越來越難找到。
而微軟不是很重視 VB 的態(tài)度似乎一直有跡可循。2017 年,微軟曾宣布過一個(gè) C#/VB 協(xié)同開發(fā)策略,但事實(shí)上有人認(rèn)為這個(gè)策略一直形同虛設(shè),只有 C# 會(huì)獲得所有的新特性,而 VB 會(huì)專注于它曾經(jīng)主宰的更簡單、更容易接近的場景。這一則聲明相當(dāng)于正式宣告策略破產(chǎn)。
“它被認(rèn)為是一種玩具語言,適合剛開始學(xué)習(xí)編程的人。”編程語言社區(qū) TIOBE 在 2018 年出具的一份報(bào)告中這樣寫道,沒有多少專業(yè)開發(fā)者會(huì)過多關(guān)注這種語言?!拔④浾诼郎p少對 VB 的投入,這種語言遲早會(huì)衰落?!蔽④浌俜疆?dāng)年公布的數(shù)據(jù),C# 的使用者量級是數(shù)百萬,而 VB.NET只有數(shù)十萬。
2020 年 3 月榜單
但很神奇的是,VB. NET 一直活躍在 TIOBE 程序語言榜單中,在 2018 年 12 月還超過 C#,排在第五位。最新的 3 月榜單中,C#排在第五,VB. NET 比之去年 3 月下滑位至第六,VB 排在第 18 位。
開發(fā)者何去何從?微軟博客中表示,開發(fā)者可以繼續(xù)使用 .NET Framework,也不一定都將 VB 應(yīng)用都遷移到 .NET Core 上,因?yàn)槟壳?.NET Core 不支持 WebForms,Workflow 或 WCF等,而且遷移還需要應(yīng)用到一些很新的技術(shù)。
“只要你高興,不論是 VB 還是 C# 用戶,你都可以繼續(xù)使用.NET Framework,只要電腦還支持 Windows,自帶的 .NET Framework 就能一直使用?!?/p>
微軟還指出, Visual Studio 還將持續(xù)增加新功能、改善性能,VB 開發(fā)者也能繼續(xù)躺享,比如他們近期為 VB 加入了 IntelliCode 。
也就是說,VB.NET 不會(huì)消失,只是不會(huì)進(jìn)一步發(fā)展,開發(fā)者可以轉(zhuǎn)用 .NET Core,或者直接轉(zhuǎn)去用 C#。
在外網(wǎng)一篇博客下,雷鋒網(wǎng)AI 源創(chuàng)評論注意到,一些開發(fā)者表示,VB 用戶群太小眾了,“消亡”是不可避免的。不僅他身邊朋友沒有人用,連朋友的朋友都沒人用。
不過需要指出的是,盡管 VB 衰落,但其實(shí)現(xiàn)在有許多程序和 APP 是用 VB 寫的,比如許多專為中小型企業(yè)開發(fā)的辦公應(yīng)用程序,VB 可以快速原型化,而且很容易上手。
還有很多的開發(fā)者表達(dá)了對于 VB、以及 20 年前使用 VB 時(shí)光的懷念。這些開發(fā)者差不多在 90 年代從 FoxPro 遷移到 VB,2000 年之后又切換到 C#。所以在懷念之余,他們也大力鼓動(dòng) VB 開發(fā)者轉(zhuǎn)到 C#。
Mike_Brady 也是其中一位,他在 2002 年開始上手 C#。他認(rèn)為有些 VB 程序員還在堅(jiān)守 VB 是因?yàn)樗麄儗τ诨ɡㄌ枺╟urly braces)太過恐懼了,“雖然 C# 很像 C,但并不是(我在工作中接觸過幾年 C 語言,不寒而栗,再也不要用了?。?,事實(shí)上 C# 更接近 VB.NET,轉(zhuǎn)換并不是很難的一件事,可能一兩個(gè)星期,就能適應(yīng)這種文體上的差異?!?/p>參考
https://www.cnblogs.com/QQBOSS/p/9906436.html
https://devblogs.microsoft.com/vbteam/visual-basic-support-planned-for-net-5-0/
https://www.thurrott.com/dev/232268/microsoft-plots-the-end-of-visual-basic