Visual Basic 永远29岁,微软宣布不再发展这门语言

近期,微软 NET 团队在开发者博客中宣布,他们虽然还会继续在 .NET 5.0 上支持 Visual Basic ,但不再将 VB 作为一门独立的语言发展(Going forward, we do not plan to evolve Visual Basic as a language)。

雷锋网AI源创评论了解到,.Net 5 是一套可以为 Windows、Linux、macOS、iOS、tvOS、Android、Web 等提供统一运行环境,横跨云端、IoT、本地游戏等的大迭代版本,由微软在去年 Build 大会宣布,并在今年的 3 月 17 日发布了第一个预览版本。

第一个预览版本

NET 5 VB 将支持类库、控制台、Windows Forms、WPF、Woker Service 和 ASP.NET Core Web API。

“展望未来,我们不打算继续演化 VB 这门语言,而是将精力放在改进稳定性、以及保持 .NET Framework版本和 .NET Core 的兼容性。”当然由于平台差异,VB 在两个版本上会逐渐展示出差异。

VB 也曾辉煌

VB 曾经也辉煌过,它是第一个支持可视化界面设计的语言。

雷锋网AI源创评论了解到,VB 的前身是 Quick BASIC ,由微软公司在 1987 年推出。若再往前追溯,Quick BASIC 还是 BASIC 的继承者。BASIC 语言诞生于 1971 年,设计目的就是面向初学者,其时的 Fortran 和 Algol 60 语言很难被非理工科生掌握。

Quick BASIC 是 DOS 下的开发语言,后来随着 Windows 系统的推出加入了图像化设计,1991 年 4 月,微软将新的版本改名为:Visual Basic,一经问世,便得到许多程序员的青睐。1998 年发布的 VB 6.0 是一个应用非常广泛的版本。

然后.NET 时代来了。2001 年,VB 迁移到了.NET 平台上,取名 VB .NET。VB .NET 对 BASIC 语言特性进行了重大改进。

但也是这个版本割裂了 VB 的阵营,一部分开发者去用了.NET 版本,另一些则坚持使用过去 VB,如经典的 VB6。开发者表示两种语言差别颇大,前者更像 java,更面向对象。

而微软选择了.NET 。2005 年,微软宣布将不再对非 .NET 版本的 VB 提供免费支持,百名 MVP 上书抗议也未果。后来,微软在 2010 年将两个版本又融入了 Visual Studio。

在内斗中取胜的 VB .NET,但没有抗住外部的对手—— C# 。C# 于 2000 年和 .NET 开发平台一起由微软发布。.NET 开发平台支持多种语言,其中 C# 是主语言。

随着时间的推移,专业开发者越来越倾向于使用 C#, 许多 VB 的用户也干脆放弃了更复杂、功能强大的 . NET 版本。到了今天,微软几乎所有的相关开发文档都用 C#,VB 源代码的例子越来越难找到。

而微软不是很重视 VB 的态度似乎一直有迹可循。2017 年,微软曾宣布过一个 C#/VB 协同开发策略,但事实上有人认为这个策略一直形同虚设,只有 C# 会获得所有的新特性,而 VB 会专注于它曾经主宰的更简单、更容易接近的场景。这一则声明相当于正式宣告策略破产。

“它被认为是一种玩具语言,适合刚开始学习编程的人。”编程语言社区 TIOBE 在 2018 年出具的一份报告中这样写道,没有多少专业开发者会过多关注这种语言。“微软正在慢慢减少对 VB 的投入,这种语言迟早会衰落。”微软官方当年公布的数据,C# 的使用者量级是数百万,而 VB.NET只有数十万。

2020 年 3 月榜单

但很神奇的是,VB. NET 一直活跃在 TIOBE 程序语言榜单中,在 2018 年 12 月还超过 C#,排在第五位。最新的 3 月榜单中,C#排在第五,VB. NET 比之去年 3 月下滑位至第六,VB 排在第 18 位。

开发者何去何从?

微软博客中表示,开发者可以继续使用 .NET Framework,也不一定都将 VB 应用都迁移到 .NET Core 上,因为目前 .NET Core 不支持 WebForms,Workflow 或 WCF等,而且迁移还需要应用到一些很新的技术。

“只要你高兴,不论是 VB 还是 C# 用户,你都可以继续使用.NET Framework,只要电脑还支持 Windows,自带的 .NET Framework 就能一直使用。”

微软还指出, Visual Studio 还将持续增加新功能、改善性能,VB 开发者也能继续躺享,比如他们近期为 VB 加入了 IntelliCode 。

也就是说,VB.NET 不会消失,只是不会进一步发展,开发者可以转用 .NET Core,或者直接转去用 C#。

在外网一篇博客下,雷锋网AI 源创评论注意到,一些开发者表示,VB 用户群太小众了,“消亡”是不可避免的。不仅他身边朋友没有人用,连朋友的朋友都没人用。

不过需要指出的是,尽管 VB 衰落,但其实现在有许多程序和 APP 是用 VB 写的,比如许多专为中小型企业开发的办公应用程序,VB 可以快速原型化,而且很容易上手。

还有很多的开发者表达了对于 VB、以及 20 年前使用 VB 时光的怀念。这些开发者差不多在 90 年代从 FoxPro 迁移到 VB,2000 年之后又切换到 C#。所以在怀念之余,他们也大力鼓动 VB 开发者转到 C#。

Mike_Brady 也是其中一位,他在 2002 年开始上手 C#。他认为有些 VB 程序员还在坚守 VB 是因为他们对于花括号(curly braces)太过恐惧了,“虽然 C# 很像 C,但并不是(我在工作中接触过几年 C 语言,不寒而栗,再也不要用了!),事实上 C# 更接近 VB.NET,转换并不是很难的一件事,可能一两个星期,就能适应这种文体上的差异。”

参考

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

Visual Basic 永远29岁,Visual Basic 谢幕!相关推荐

  1. 想和你一起为 Visual Studio 庆祝20岁生日

    Visual Studio Live 倒计时开始-- 1997年1月28日,Visual Stuido 97正式推出,她将Visual Basic.Visual C++.Visual J++.Visu ...

  2. 微软公布测试版Visual Studio for Mac和Visual Studio 2017 for Windows

    本周早些时候泄露的文档显示:微软正在向开发者提供两个新测试版Visual Studio的服务:Visual Studio for Mac以及Visual Studio 2017 for Windows ...

  3. 电脑打字前面的那条线叫什么_我29岁那年就学会了打字。这值得吗?

    电脑打字前面的那条线叫什么 by Matthew Burfield 通过马修·伯菲尔德(Matthew Burfield) 我29岁那年就学会了打字.这值得吗? (I learned to touch ...

  4. 微软29岁员工年薪税后85W!竟然说自己活得很惨!网友:确实挺惨!

    什么是真正的穷?什么是真正的惨? 可能很多漂在大城市的人都觉得自己惨,收入不高,没房没车,惨兮兮的故事可以搜集一箩筐,但这位微软员工的哭惨却让人越看越不是滋味. 微软,29岁,税后85万,竟然还觉得自 ...

  5. Paper:《NÜWA: Visual Synthesis Pre-training for Neural visUal World creAtion,女娲:用于神经视觉世界创造的视觉》翻译与解读

    Paper:<NÜWA: Visual Synthesis Pre-training for Neural visUal World creAtion,女娲:用于神经视觉世界创造的视觉>翻 ...

  6. 29岁了还一事无成是人生的常态?

    文/沉默王二 1. 又到了年底该总结的时候了,一年一年地过得真快.2018年,我29岁,这一年非要用一个词来形容的话,就是一无所成. 我读书.写作.敲代码--2018年就这样过去了.这种略带伤感的语调 ...

  7. 29岁了还一事无成也许是人生的常态

    1 又到了年底该总结的时候了,一年一年地过得真快.2018年,我29岁,这一年非要用一个词来形容的话,就是一无所成. 我读书.写作.敲代码--2018年就这样过去了.这种略带伤感的语调,其实和2017 ...

  8. CSDN著名技术专家Visual C++2010开发体验心得——从Visual C++6 0到Visual C++201

    IT业是一个创造奇迹的行业,IT业也是一个年轻的行业,IT业更是一个不断更新的行业.在2009年,微软已经连续推出Visual Studio2010 beta1 与 Visual Studio2010 ...

  9. CSDN著名技术专家Visual C++2010开发体验心得——从Visual C++6.0到Visual C++2010见证VC++辉煌时刻

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! IT业是 ...

最新文章

  1. 80后博导当上双一流高校副校长:还是杰青获得者
  2. Flutter开发之布局-1-Column(15)
  3. 炉石android更新日志,炉石传说每逢更新必卡门,安卓用户你们想哭了吗?
  4. 【OGG】OGG的单向复制配置-支持DDL(二)
  5. python --version没输出_python之旅【1】--格式化输出
  6. 【学习笔记】JS基础语法一小时通
  7. Linux echo命令:给文本着色/背景色/文本闪动
  8. java jaxb注解xmlnull_java – 将空值表示为xml jaxb中的空元素
  9. js html异步加载的属性,异步加载JS的五种方式
  10. Docker Registry 删除镜像并清理
  11. 适用于IE浏览器及非IE浏览器的xmlhttp脚本
  12. Python黑帽编程 3.4 跨越VLAN
  13. 句柄的本质(整理-收藏) 选择自 feijj2002_ 的 Blog
  14. 通用规范汉字表 一级字表(3500字)
  15. Windows平台实现真实时毫秒级4K H264/H265直播技术(硬编码技术方案)
  16. 经纬度坐标转像素坐标
  17. 苹果手机用计算机打不开,苹果手机更新ios11后,照片在电脑上打不开怎么办?...
  18. 网络原理考试到ADSL上网原理
  19. 【TUN模式】对QQ或者微信域名、QQ邮箱、微信公众号文章、微信开发者社区相关的网站访问非常慢、图片加载不出来、网页空白的解决方案
  20. 迟到的 2019 年个人总结

热门文章

  1. domino子表单html,使用Domino表单构建Web页面.ppt
  2. MySQL中的Text类型
  3. 事件标志组解决任务间资源共享问题
  4. CPU使用百分比测量
  5. mysql innodb 排他锁_MySQL 针对 InnoDB 引擎锁的种类:行锁(共享锁和排他锁)和表锁(意向共享锁和意向排他锁)...
  6. EventBus3.0 List事件遇到的坑
  7. sorl java 建索引_solr 的客户端调用solrj 建索引+分页查询
  8. sql 导航函数 lag
  9. 归并排序的基本原理及实现
  10. python库整理:os