Visual Basic(VB)编程语言宣告终结,微软:将不再提供新功能
引自:机器之心报道 参与:泽南、蛋酱、张倩
整理完善:tmtony
一、先说说什么是Visual Basic vb开发语言
Visual Basic(简称VB)是Microsoft公司开发的一种通用的基于对象的程序设计语言,为结构化的、模块化的、面向对象的、包含协助开发环境的事件驱动为机制的可视化程序设计语言。是一种可用于微软自家产品开发的语言。
“Visual” 指的是开发图形用户界面 (GUI) 的方法——不需编写大量代码去描述界面元素的外观和位置,而只要把预先建立的对象add到屏幕上的一点即可。 “Basic”指的是 BASIC (Beginners All-Purpose Symbolic Instruction Code) 语言,是一种在计算技术发展历史上应用得最为广泛的语言。
Visual Basic源自于BASIC编程语言。VB拥有图形用户界面(GUI)和快速应用程序开发(RAD)系统,可以轻易的使用DAO、RDO、ADO连接数据库,或者轻松的创建Active X控件,用于高效生成类型安全和面向对象的应用程序 。程序员可以轻松的使用VB提供的组件快速建立一个应用程序。
1991年,微软推出了Visual Basic1.0版。这在当时引起了很大的轰动。许多专家把VB的出现当做是软件开发史上的一个具有划时代意义的事件。在世界上以及国内有非常多的粉丝,包括很多Excel Access 的VBA使用者,同时也都是Visual Basic语言的使用者。VB语言以容易上手、可以直接编写图形界面而为人称道,过去很多人接触计算机编程的第一种语言是微软推出的 Visual Basic。
二、Visual Basic也即将退出舞台
而现在,随着更多新的语言的推出,随着最喜欢使用Vb语言的比尔盖茨完全退出微软前线,Visual Basic也即将退出舞台。这一语言即将停止更新了。
本周三, 微软. Net 团队在一份开发者博客中表示,微软将在. Net 5.0 上继续支持 Visual Basic,但此后不再会添加新功能或继续发展该语言。
「自. Net 5 开始,Visual Basic 会继续支持类库、控制台、Windows 窗体、WPF、Worker Service 和 ASP. Net | Open-source web framework for . Net | Open-source web framework for . Net | Open-source web framework for . Net | Open-source web framework for . Net Core Web API 等,为现有 VB 用户提供向 . Net Core 迁移应用的路径,」微软表示。「展望未来,我们将不再视 Visual Basic 为一门语言,VB 的未来将专注于稳定性、上面列出的应用程序类型及 Visual Basic 的. Net Core 和. Net Framework 版本之间的兼容性。」
在互联网时代到来之前,VB 曾经依靠「所见即所得」的开发环境,成为热门的桌面开发工具,并一度拥有 300 万开发者。依靠 Windows 操作系统的优势,VB 一直保持着对于竞争对手的压制。
而在互联网时代,随着 Java 等语言的兴起,VB 的优势逐渐丧失殆尽。为了对抗 Java,微软推出了. Net 并发布了. Net 版 Visual Basic,与之并行的是 C# 版本。这两种语言一起发展,并具有大致相同的功能集。但随着时间的推移,情况发生了变化:专业的开发人员更多采用了 C#,许多经典 VB 的支持者直接放弃了功能强大,但更为复杂的. Net 版本环境。如今,几乎所有微软相关的开发人员文档都仅使用 C#,而很难找到 VB 源代码示例。
更糟糕的是,微软在 2017 年宣布最初的 C#/VB 联合开发战略已经结束,只有 C# 会继续更新功能,VB 则专注于更简单和平易近人的场景。但这件事后来也不了了之,微软实际上选择了放弃 VB,近日的官宣也证明了这一切。
对于 VB 开发者来说,他们可以将现在的代码库升级到 . Net Core,或者是将在 2020 年末发布的. Net 5.0,这次升级后的版本将取代所有传统的. Net 以及开源和跨平台的. Net Core。
需要注意的是,. Net 5.0 可能不会支持一些旧技术,使用 WebForms、Workflow 或 WCF 的开发者可以选择继续使用旧版本。这些应用还会一直运行并且得到支持,直到其版本的底层 Windows 被淘汰以后,. Net 的生命周期主要和它们部署的 Windows 版本挂钩。
在最新一期 IEEE 编程语言排名中,Visual Basic 名列第 20 位,Python 排名第一。
微软还指出,VB 开发者偶尔也会从 Visual Studio 的改进中受益。
「Visual Studio 会定期添加新特性来提升开发者的体验,包括那些使用 Visual Basic 或. Net Core、. Net Framework 的开发人员,」. Net 的开发团队补充说。「为 Visual Basic 添加的 IntelliCode 就是其中一个例子。」
三、相关知识
vb语言的特点
VB 的中心思想就是要便于程序员使用,无论是新手或者专家。VB使用了可以简单建立应用程序的GUI 系统,但是又可以开发相当复杂的程序。VB 的程序是一种基于窗体的可视化组件安排的联合,并且增加代码来指定组件的属性和方法。因为默认的属性和方法已经有一部分定义在了组件内,所以程序员不用写多少代码就可以完成一个简单的程序。过去的版本里面 VB 程序的性能问题一直被放在了桌面上,但是随着计算机速度的飞速增加,关于性能的争论已经越来越少。
窗体控件的增加和改变可以用拖放技术实现。一个排列满控件的工具箱用来显示可用控件(比如文本框或者按钮)。每个控件都有自己的属性和事件。默认的属性值会在控件创建的时候提供,但是程序员也可以进行更改。很多的属性值可以在运行时候随着用户的动作和修改进行改动,这样就形成了一个动态的程序。举个例子来说:窗体的大小改变事件中加入了可以改变控件位置的代码,在运行时候每当用户更改窗口大小,控件也会随之改变位置。在文本框中的文字改变事件中加入相应的代码,程序就能够在文字输入的时候自动翻译或者阻止某些字符的输入。
VB 的程序可以包含一个或多个窗体,或者是一个主窗体和多个子窗体,类似于操作系统的样子。有很少功能的对话框窗口(比如没有最大化和最小化按钮的窗体)可以用来提供弹出功能。
VB 的组件既可以拥有用户界面,也可以没有。这样一来服务器端程序就可以处理增加的模块。
VB 使用参数计算的方法来进行垃圾收集,这个方法中包含有大量的对象,提供基本的面向对象支持。因为越来越多组件的出现,程序员可以选用自己需要的扩展库。和有些语言不一样,VB 对大小写不敏感,但是能自动转换关键词到标准的大小写状态,以及强制使得符号表入口的实体的变量名称遵循书写规则。默认情况下字符串的比较是对大小写敏感的,但是可以关闭这个功能。
VB 使得大量的外界控件有了自己的生存空间。大量的第三方控件针对 VB 提供。VB 也提供了建立、使用和重用这些控件的方法,但是由于语言问题,从一个应用程序创建另外一个并不简单。
vb语言的优势
1、功能强大,可以与Windows专业开发工具相媲美;
2、VB始终是最高效、开发成本最低的强大的开发工具;
3、简单易学、效率高;使用Windows内部的广泛应用程序接口(API)函数,使用动态链接库(DLL)、对象的链接与嵌入(OLE)、开放式数据连接(ODBC)等技术,可以高效、快速地开发Windows环境下功能强大、图形界面丰富的应用软件。
vb语言的缺点
Visual Basic 语言具有不支持继承、无原生支持多线程、异常处理不完善等三项明显缺点,使其有所局限性(此些缺点皆已在 vb .net 获得改进)。
1、不支持继承
VB 5.0 和 VB 6.0 都是基于对象的编程语言,但是不包含继承特性。VB 中提供了特殊的类的功能,但是还是不能满足程序员的需求。
2、无原生支持多线程
Visual Basic 对于多线程无原生支持,只能通过Windows API的调用实现,且极其的不稳定。因为在API创建的线程中,并没有自动初始化运行时库,导致部分的函数无法使用。一般的,在VB6等早期的VB开发环境下,使用API创建线程的目的是完成容易使程序假死的大量数据或者逻辑的计算。
3、异常处理不完善
Visual Basic 中内置异常处理,即使未写异常处理代码,一旦用户出错也会弹出一个明确写出出错原因对话框,接着程序终止。
Visual Basic 中可以使用 Err.Raise抛出异常。对系统及用户抛出的异常的处理常用两种模式:一是使用 On Error Resume Next 处理错误;另一种是使用 On Error Goto 将运行引入错误处理代码。但相对 C++++ 等语言而言,这样的异常处理破坏了代码的结构。
任何语言都有其忠实的粉丝,也有其强大的生命力,但新的事物和新的工具也会随之不断涌现,人也和开发工具一样,总是长江后浪推前浪,一代更比一代强