HelloKitty • 2023-02-15 16:02
1685
本文由 51CTO技术栈 撰写/授权提供,转载请注明原出处。
文章来源于:51CTO技术栈
作者:Tim Anderso
微软终于更新 .NET 编程语言策略了。这是自 2017 年以来首次更新!最显著的变化是 Visual Basic(VB)的地位进一步削弱,尽管该公司承诺将继续“致力于 Visual Basic”。
2 月 6 日,首席项目经理凯瑟琳·多拉德(Kathleen Dollard)的帖子几乎没有透露任何信息,她表示“你不会发现大的变化”,并参考了其他文件细节。
C# :继续创新
特别承诺向后兼容,但开发者有话说
在三种.NET语言中,C# 是目前最流行的语言,也是编写大多数框架和库的语言。微软承诺继续创新,同时特别承诺向后兼容性,一位开发人员表示,“有必要限制向后兼容的水平。例如,不必继续支持非通用集合。”
微软项目经理伊莫·兰德沃斯(Immo Landwerth)很快做出了回应,表示“我们永远不会做出如此有影响力的突破性改变”,并对 Windows 8 实验添加了一个有趣的视角。他说:“我们试图从 Windows 8 时代的 .NET 重新开始,但事实证明它完全行不通。”。
金融界流行的F# : 与 C# 协同工作
F# 是第二种语言,一种在金融界很流行的函数语言。微软的战略是“发展F#,使其与 C# 协同工作,并利用新的 .NET 运行时和库来改进。”还有人提到需要“依靠社区提供重要的库、开发人员工具和工作负载支持。”
尴尬的 VB:尽一切必要努力
使其成为 .NET 生态系统的一流公民
对于微软来说,尴尬的是第三个,Visual Basic。2017 年,C# 首席设计师 Mads Torgersen 的一篇博客文章阐述了当时的 .NET 语言策略,这篇文章比前文 Dollard 的新文章写得更为详细、更有见解。
Torgersen 表示,大多数 VB 开发人员“正在使用 WinForms 在 Windows 中构建业务应用程序,少数人正在构建网站,同时主要使用ASP.NET Web窗体。”WinForms 和 Web 窗体都是旧框架,这表明 VB 程序员对最新技术的兴趣不如 C# 或 F# 开发人员。
Torgersen 还引用了一项 2017 年的 Stack Overflow 调查,该调查显示 VB 是开发人员必须使用的“最可怕”的语言,尽管正如他所补充的,目前还不清楚这主要是 VB.NET 还是旧的 VB。但无论如何,VB 仍然是 Microsoft Office 的宏语言。
题外话:五年后,在 2022 年 StackOverflow 的调查中,对 VB 的唯一提及是“VBA”,这是一种宏语言,它仅排在倒数第三位,表的底部被 MATLAB 占据。C 排名第十,F 排名第 17。
微软的 VB 策略似乎有点改变。2017 年,Torgersen 承诺该团队将“尽一切必要努力,使其成为 .NET 生态系统的一流公民”。新策略将 VB 描述为一种“倾向于清晰而非简洁”的语言,并表示,当 C# 或 .NET 运行时获得新功能时,VB 将采用“consumption-only”的方法,并且“我们不打算将 Visual Basic 扩展到新的工作负载”
多年来的事实是:对于那些想要从 .NET 中获得最佳效果的人来说,VB 并不是最好的语言。这一点早在本世纪初.NET首次推出时,就板上钉钉了。相较而言,C# 是 .NET 的新语言;而 VB 却是为 .NET 而重新设计的,它总是很难让使用者满意,甚至不能满足当时的 VB 铁杆粉丝(虽然他们中的许多人都发誓要继续使用 VB6)。
微软很乐于宣传公民开发者的重要性,毕竟 VB 的简单英语语法似乎很适合用来做到这一点。遗憾的是,微软未能以一种能够使其对商业开发者,更具吸引力的方式对 VB 进行改进。
写在最后
.NET 作为一个面向未来的高度集成的技术平台,凝结了无数微软人的心血,当然移动时代的兴起,更多的开发者从迈向更适合移动端的语言。但这并不妨碍微软的后发优势。
此次语言策略的变更,可以看出,微软正在重新赋予 VB 的语言地位,致力于让其成为一种大众开发者的语言。而 C#、F# 正在成为持续创新的重心。
扫码关注公众号
获取更多技术资讯