作者 | 屠敏

出品 | CSDN(ID:CSDNnews)

近日,微软宣布将在即将推出的 .NET 5 中支持 Visual Basic,并扩大该编程语言支持的应用程序类型,以此帮助 VB 开发者迁移其代码,但这也意味着微软“不打算将 Visual Basic 作为一种语言独立继续研发”。

Visual Basic 老矣,尚能饭否?

回看 Visual Basic,在不知不觉中它已陪伴初代的开发者们走过了 29 年的时光。1991 年 4 月,微软首次带来了 Visual Basic 1.0 Windows 版本,在业界引发很多关注,虽然如今看来 VB 1.0 的功能很薄弱,但是在彼时的环境中,它是第一个“可视”的编程软件。也正是基于这一点,很多人都开始在 VB 平台上尝鲜,由此,Visual Basic 这门语言也成为了面向对象程序员的最爱。

不过,快速发展没几年,该语言的分叉路口在 1998 年微软推出 Visual Basic 6 这一版本后开始出现。

随着 .NET 的兴起,微软将 .NET Framework 引入,并在下一版本中将其命名为 Visual Basic .NET,以便在 .NET 平台上运行。然而这一举动导致了 VB 开发者分批站队:一批选择使用 .NET 版本;一些坚持使用老版 VB,如 VB 6。然而在新版的 Visual Basic .NET 中使用了新的核心和特性,导致不少 VB 程序员都要改写程序,由此两者之间产生了分歧。而这一混乱一直持续到了 2005 年微软宣布将不再对非 .NET 版本的 VB 进行支持才结束。

此后,在 Visual Basic .NET 和同样由微软推出且具有几乎相同功能集的  C# 相互竞争的时代中,不少 VB 用户放弃了越来越复杂而强大的 .NET 版本,选择了 C#。不过,如今从各大编程语言排行榜,譬如编程语言社区 TIOBE 最新的 3 月榜单中,C# 热度一直稳居 Top 5,Visual Basic .NET 也一直保持在 Top 10 中,相较而言,Visual Basic .NET 在一些工具的研发场景中依然很常见。

微软:不打算将 Visual Studio 作为一种语言来发展

为何曾经也算得上编程语言巨头的 Visual Basic 会沦落至此?

对此,微软表示,扩大项目类型以促进向新框架的迁移是遵循客户反馈最终统一出来的方案。基于这一点,.NET 团队也在 3 月 11 日特定发布了一篇《为 .NET 5.0 计划提供 Visual Basic 支持》的博客进行了详尽的说明与回应,「我们听到了您的反馈,即您希望在 .NET Core 上使用 Visual Basic」。

据博文透露,从 .NET 5 开始,VB 将支持类库、控制台、Windows 窗体、WPF、Worker Service 和 ASP.NET Core Web API,为现有的客户提供了一条将其应用程度迁移到 .NET Core 的不错路径。与此同时,Visual Basic 用户也能够利用新的平台功能,如并行部署、跨平台支持、性能和新的 API 改进。

.NET 团队也表示,使用 Visual Basic 的主要优点之一是该语言已经成熟发展了不少时间。"展望未来,我们不打算将 Visual Studio 作为一种语言来发展,".NET团队说。"这支持了语言稳定性,并维护 Visual Basic 的 .NET Core 和 .NET 框架版本的兼容性。Visual Basic 可能不支持需要更改语言的 .NET Core 的新功能。由于平台的差异,.NET  Framework 上的 Visual Basic 和 .NET Core 之间会有一些差异。

除此之外,微软还指出,VB 应用迁移到 .NET Core 并不一定是所有开发人员的计划,因为它适用于仅 Windows .NET 框架,只要 Windows 是支持,.NET Framework 就会一直受支持,因为它是 OS 附带的。不过,如果应用程序使用的是 .NET Core 不支持的技术(例如 WebForms,Workflow 或 WCF),建议保留在 .NET Framework 上,因为移植将需要进行一些工作才能迁移到较新的技术。

我们该放弃 VB.NET 并转向 C# 吗?

针对微软的这一举措,不少网友纷纷表示在是不是应该放弃 VB.NET,而选择 C#,毕竟现在微软的开发文档基本上只提供 C#,而没有 VB 示例了。但 .NET 团队认为并非如此,并表示“Visual Basic 是一种很棒的语言,是一种高效的开发环境。Visual Basic 的未来将包括 .NET Framework 和 .NET Core,并将致力于稳定性,上面列出的应用程序类型以及 Visual Basic 的 .NET Core 和 .NET Framework 版本之间的兼容性。”

【End】

推荐阅读 

☞拿着 22 万美元年薪,混得还不如实习生?

☞比特币最主流,以太坊大跌,区块链技术“万金油”红利已结束 | 区块链开发者年度报告

☞如何用Jupyter Notebook制作新冠病毒疫情追踪器?

☞出生小镇、高考不顺、复旦执教、闯荡硅谷,59 岁陆奇为何如此“幸运”?

☞DevOps 转型时如何安全融入?对企业产出有何影响?2019年 DevOps 最新现状研究报告解读 | 原力计划

☞比特币最主流,以太坊大跌,区块链技术“万金油”红利已结束 | 区块链开发者年度报告

你点的每一个在看,我认真当成了喜欢

微软放弃继续开发 Visual Basic !相关推荐

  1. 苹果或已放弃3月发布廉价新iPhone;贾跃亭回应家人巨额索赔;微软不再继续开发 Visual Basic | 极客头条...

    整理 | 屠敏 头图 | CSDN 下载自东方 IC 快来收听极客头条音频版吧,智能播报由标贝科技提供技术支持. 「极客头条」-- 技术人员的新闻圈! CSDN 的读者朋友们早上好哇,「极客头条」来啦 ...

  2. Visual Basic十年风云

    Visual Basic十年风云 Visual Basic十年风云 我从来没有想到过,撰写这篇文章需要十年的光阴 有时我自清晨的睡梦中醒来,望着窗外高楼间透露的微稀曙光 耳畔都不免响起那些岁月烙印后的 ...

  3. Visual Basic了解

    Visual Basic是一种由微软公司开发的结构化的.模块化的.面向对象的.包含协助开发环境的事件驱动为机制的可视化程序设计语言.这是一种可用于微软自家产品开发的语言.它源自于Basic编程语言.V ...

  4. 编程大讲坛、坛坛是佳酿--编程大讲坛:Visual Basic核心开发技术从入门到精通...

    [书名]编程大讲坛:Visual Basic核心开发技术从入门到精通 [作者]薛小龙 [ISBN]978-7-121-09057-8 [出版社]电子工业出版社 [出版日期]2009年9月 [定  价] ...

  5. 微软公告:Visual Basic 6 完全兼容 Windows 8 的整个产品周期

    微软刚刚将其 Windows 系统对 Visual Basic 6 程序的完全兼容支持延长到了 Windows 8 的整个产品周期. Visual Basic 6 最早发售于 1998 年, 所以现在 ...

  6. linux下开发basic程序设计,使用 Visual Basic 编写基于 Unity3D 的计算器

    随着 .NET 全平台战略的推进,微软正在让以 C# 为先锋的 .NET 拥有跨平台特性.这个过程中一直有人想知道其它 .NET 语言对跨平台的支持有什么改进,熟悉 C# 但是喜欢用 VB 的我也不例 ...

  7. visual basic是不是计算机语言,微软开始抛弃 Visual Basic 编程语言

    新酷产品第一时间免费试玩,还有众多优质达人分享独到生活经验,快来新浪众测,体验各领域最前沿.最有趣.最好玩的产品吧~!下载客户端还能获得专享福利哦! 原标题:微软开始抛弃 Visual Basic 编 ...

  8. Visual Basic开发实战1200例(第Ⅱ卷)pdf

    下载地址:网盘下载 内容简介 编辑 本书以开发人员在项目开发中经常遇到的问题和必须掌握的技术为核心,介绍了应用Visual Basic进行程序开发的多方面的知识和技巧,主要包括Visual Basic ...

  9. 老兵新传:Visual Basic核心编程及通用模块开发 pdf电子书

    文章来自: 绿软网版权所有:http://www.down88.com/soft/1271.html 编辑推荐: 编程"高手"的功力体现在对语言的彻底掌握和丰富的实践经验 书稿内容 ...

最新文章

  1. ESP8266访问网站-urequest get方法
  2. win10 便签无法联网_便签 | win10无法搜索到wifi的解决方案
  3. 整顿满月,如今现金贷生不如死
  4. 基于ABP落地领域驱动设计-04.领域服务和应用服务的最佳实践和原则
  5. 模型和控制器-起步阶段
  6. 手机发送验证码的业务逻辑探究-主要是安全性,响应性
  7. 如何自动填充网页表单_流量型称重型充绒机充棉机如何选择,教你轻松辨别全自动填充机器...
  8. 腾讯申请自动驾驶相关专利 可实现自动变道
  9. opencv测试代码_玩转OpenCv(二):安装vs2010和opencv3
  10. 一阶电路误差分析_电动涡旋压缩机转子的模态分析及试验研究
  11. 控制层SpringMVC和Struts2的区别
  12. windows C++多线程(四):_beginthread的使用
  13. python2.7 一个莫名其妙的错误
  14. 手把手教你做一个APP应用(含源码)
  15. php小型购物网站,PHP实现一个多功能购物网站
  16. 手机打开电脑html没有图片,jpg图片手机能看电脑打不开怎么办
  17. 2022java:eclipse编译器下载与配置详细
  18. ​从小样本学习出发,奔向星辰大海
  19. Object自动排序的问题
  20. 信息学奥赛一本通在线提交地址

热门文章

  1. Kettle计算器的使用以及字符串格式化
  2. Silverlight 4+RIA Services–搜索引擎优化(SEO)
  3. 使用axure的团队项目功能
  4. [CMake] set_property 和 set_target_properties
  5. [论文翻译] Class-incremental learning: survey and performance evaluation on image classification
  6. 【杂文】spring-boot报错 ~ zone value ‘Öйú±ê׼ʱ¼ä‘ is unrecognized or represents more than on time zone.
  7. 在VMware中的Ubuntu虚拟机安装open-vm-tools调整屏幕可以复制粘贴
  8. vue限制点击次数_vue点击切换颜色限制个数(用了mui框架)
  9. dp------最长公共子序列问题
  10. leetcode python3 简单题21. Merge Two Sorted Lists(Linked)