Visual Basic语言
#编程语言# 0 0
Visual Basic(简称VB)是Microsoft开发的一种面向对象的编程语言。其源自于BASIC编程语言,拥有图形用户界面(GUI)和快速应用程序开发(RAD)系统,能够轻易的使用DAO、RDO、ADO连接数据库,或者轻松的创建Active X控件,用于高效生成类型安全和面向对象的应用程序。
  • 中文名称: 计算机编程语言
  • 外文名称: Visual Basic
  • 发布时间: 1991年04月
  • 所属公司: Microsoft
详细介绍 PROFILE +

基本介绍

Visual Basic(简称VB)是Microsoft开发的一种面向对象的编程语言。使用Visual Basic即可快速、轻松地创建类型安全的.NET应用。

“Visual”指的是开发图形用户界面(GUI)的方法——不需编写大量代码去描述界面元素的外观和位置,而只要把预先建立的对象add到屏幕上的一点即可。“Basic”指的是BASIC(Beginners All-Purpose Symbolic Instruction Code)语言,是一种在计算技术发展历史上应用得最为广泛的语言。

Visual Basic源自于BASIC编程语言。VB拥有图形用户界面(GUI)和快速应用程序开发(RAD)系统,可以轻易的使用DAO、RDO、ADO连接数据库,或者轻松的创建Active X控件,用于高效生成类型安全和面向对象的应用程序。程序员可以轻松的使用VB提供的组件快速建立一个应用程序。

产生背景

VB 6.0 启动画面

1991年4月,微软公司推出了Visual Basic 1.0Windows版本,这个连接编程语言和用户界面的进步被称为Tripod(有些时候叫做Ruby),最初的设计是由阿兰·库珀(Alan Cooper)完成的。在当时,它是第一个“可视”的编程软件。

而后多年,Visual Basic经过多次发展,其发展历程展示在“Visual Basic发展简史”表中。

在2020年3月11日,微软宣布不会再开发VB或增加功能。

Visual Basic 发展简史

发布日期 名称 说明

.NET Framework 引入之前

Apr-91 Visual Basic 1.0 Windows 版本

Sep-92 Visual Basic 1.0 DOS 版本

Nov-92 Visual Basic 2.0 对于上一个版本的界面和速度都有所改善。

Jun-93 Visual Basic 3.0 包含一个数据引擎,可以直接读取Access数据库。

Aug-95 Visual Basic 4.0 发布了32位和16位的版本。其中包含了对类的支持。

Feb-97 Visual Basic 5.0 包含了对用户自建控件的支持,且从这个版本开始VB可以支持中文。

Oct-98 Visual Basic 6.0

.NET Framework 引入之后

Feb-02 Visual Basic .NET 2002 (7.0) 由于其使用了新的核心和特性,所以很多VB的程序员都要改写程序。

Apr-03 Visual Basic .NET 2003 (7.1) 主要改进了运行状况,提升了IDE以及运行时稳定性。

Nov-05 Visual Basic 2005 (8.0) 是 vb .net 的重大转变,微软决意在其名称中去掉了".NET"部份。VB2005提供My伪命名空间、泛型、操作符重载等新语言特性。

Nov-07 Visual Basic 2008 (9.0)提供支持IIF函数、匿名类、LINQ、Lambda表达式、XML数据结构等新语言特性。

Mar-08 微软宣布结束对于 VB 6.0的延长支持。

Apr-10 Visual Studio 2010 (10.0)提供支持Dynamic Language Runtime (DLR)、自动实现属性、集合初始化、不需要在代码断行书写时输入下划线“_”等新语言特性。

May-12 Visual Studio 2012 (11.0) RC 提供支持更简易的异步编程(Asynchronous Programming)、Iterator、扩充Global 关键词等新语言特性。

2013-11-13-2 Visual Studio 2013

2014/11/13 Visual Studio 2015 Windows、iOS以及Android应用开发

产品设计

语言基础

注释方式

在VB中,注释有2种方式。

1.以Rem关键字开头,并且Rem关键字与注释内容之间要加一个空格。注释可以是单独的一行,也可以写在其他语句行的后面。如果在其他语句行后使用Rem关键字,则必须使用冒号(:)与语句隔开。

2.使用一个撇号(')来代替Rem关键字。若使用撇号,则在其他语句行使用时不必加冒号。

特征衡量

在Visual Basic中,可通过属性、方法和事件来说明和衡量一个对象的特征。

事件(Event)

事件是指发生在某一对象上的事情。事件又可分为鼠标事件和键盘事件。例如,在命令按钮(Command Button)这一对象上可能发生鼠标单击(Click)、鼠标移动(Mouse Move)、鼠标按下(Mouse Down)等鼠标事件,也可能发生键盘按下(Key Down)等键盘事件。总之,事件指明了对象“什么情况下做?”,常用于定义对象发生某种反映的时机和条件。

方法(Method)

方法是用来控制对象的功能及操作的内部程序。例如,人具有说话、行走、学习、睡觉等功能,在visual Basic中,对象所能提供的这些功能和操作,就称作“方法”。以窗体为例,它具有显示(show)或隐藏(hide)的方法。总之,方法指明了对象“能做什么?”,常用于定义对象的功能和操作。

属性(Property)

属性是指用于描述对象的名称、位置、颜色、字体等特征的一些指标。可以通过属性改变对象的特性。

有些属性可以在设计时通过属性窗口来设置,不用编写任何代码;而有些属性则必须通过编写代码,在运行程序的同时进行设置。可以在运行时读取和设置取值的属性成为读写属性,只能读取的属性成为只读属性。总之属性指明了对象“是什么样的?”,常用于定义对象的外观。

对象与类

对象(Object)

Visual Basic.NET具有“面向对象”的特性,Visual Basic.NET应用种程序的基本单元是对象,用Visual Basic.NET编程就是用“对象”组装程序。这种“面向对象”的编程方法与传统的全部用代码编制程序的方法有很大区别,就像用集成电路芯片组装电视机和用三极管,二极管组装电视机的区别一样。显然,“面向对象”的编程方法比传统的编程方法更简单,更方便,并且编写出的程序也更加稳定。因此,“对象”可以被看做Visual Basic.NET程序设计的核心。

在Visual Basic.NET程序设计中,对象中还可以包含头,手,腿,脚等部位,其中的每个部位又可以单独作为作为被研究的对象。在Visual Basic.NET程序设计中,整个应用程序就是一个对象,应用程序中又包含着窗体(Form),命令按钮(Command),菜单(Menu)等对象。

类(Class)

在Visual Basic.NET中,对象是由类创建的,因此对象可以说是类的具体实例,这就好比是蛋糕和做蛋糕的模具之间的关系。

各种不同的对象分属于各种不同的种类。同一类对象可能具有一些不同的特征(或是说同一类对象不一定具有完全相同的特性);具有某些相同的特性的对象,不一定是同一类对象,这就好比是人和猴子虽然都有身高、性别等特征,但二者之间还存在着智商、语言等特性差异,这两个对象之间的特性相差很多,根本就不能算是同一类对象。而男人和女人,虽然有着性别、生理等方面的差异,但他们绝大部分特性相同,可以算是同一种类。由此,可以归结为一句话:同一类对象的绝大部分特性相同。

相关控件

根据应用类型,Visual Basic控件可以分为如下3类:

内置控件

内置控件即Visual Basic工具箱中的控件,里面包含了常见窗体程序所需要的控件

Visual Basic中,大部分的程序执行都是在事件中完成的。

在代码中,控件的每一个事件都需要声明,声明方法类似一个子过程的声明。大部分的控件在双击控件进入代码界面的时候都会自动补完该控件的最常用事件的声明。具体代码示范如下:

ActiveX控件

ActiveX控件包含不同版本Visual Basic提供的控件和仅在专业版、企业版中提供的控件,并且还包含第三方提供的控件。ActiveX控件是对Visual Basic内置控件的扩充,开发人员可以根据个人需要进行随意扩充,扩充的ActiveX控件将在工具箱中显示。

可插入对象

在Visual Basic的工具栏中,可以放置其他的第三方对象,可以像使用控件一样轻松使用。添加后的对象也在工具箱中显示。有关第三方对象,可以从受信任的来源下载控件,并通过添加引用来导入。支持这些自定义的Vb的控件有:ComponentOne Studio,Spread,ActiveReports、MultiRow等。

语言特点

基本特点

VB的中心思想就是要便于程序员使用,无论是新手或者专家。VB使用了可以简单建立应用程序的GUI系统,但是又可以开发相当复杂的程序。VB的程序是一种基于窗体的可视化组件安排的联合,并且增加代码来指定组件的属性和方法。因为默认的属性和方法已经有一部分定义在了组件内,所以程序员不用写多少代码就可以完成一个简单的程序。过去的版本里面 VB 程序的性能问题一直被放在了桌面上,但是随着计算机速度的飞速增加,关于性能的争论已经越来越少。

窗体控件的增加和改变可以用拖放技术实现。一个排列满控件的工具箱用来显示可用控件(比如文本框或者按钮)。每个控件都有自己的属性和事件。默认的属性值会在控件创建的时候提供,但是程序员也可以进行更改。很多的属性值可以在运行时候随着用户的动作和修改进行改动,这样就形成了一个动态的程序。举个例子来说:窗体的大小改变事件中加入了可以改变控件位置的代码,在运行时候每当用户更改窗口大小,控件也会随之改变位置。在文本框中的文字改变事件中加入相应的代码,程序就能够在文字输入的时候自动翻译或者阻止某些字符的输入。

VB 的程序可以包含一个或多个窗体,或者是一个主窗体和多个子窗体,类似于操作系统的样子。有很少功能的对话框窗口(比如没有最大化和最小化按钮的窗体)可以用来提供弹出功能。

VB 的组件既可以拥有用户界面,也可以没有。这样一来服务器端程序就可以处理增加的模块。

VB 使用参数计算的方法来进行垃圾收集,这个方法中包含有大量的对象,提供基本的面向对象支持。因为越来越多组件的出现,程序员可以选用自己需要的扩展库。和有些语言不一样,VB 对大小写不敏感,但是能自动转换关键词到标准的大小写状态,以及强制使得符号表入口的实体的变量名称遵循书写规则。默认情况下字符串的比较是对大小写敏感的,但是可以关闭这个功能。

VB 使得大量的外界控件有了自己的生存空间。大量的第三方控件针对VB提供。VB也提供了建立、使用和重用这些控件的方法,但是由于语言问题,从一个应用程序创建另外一个并不简单。

语言缺点

Visual Basic语言具有不支持继承、无原生支持多线程、异常处理不完善等三项明显缺点,使其有所局限性(此些缺点皆已在vb.net获得改进)。

不支持继承

VB 5.0和VB 6.0都是基于对象的编程语言,但是不包含继承特性。VB中提供了特殊的类的功能,但是还是不能满足程序员的需求。

无原生支持多线程

Visual Basic对于多线程无原生支持,只能通过Windows API的调用实现,且极其的不稳定。因为在API创建的线程中,并没有自动初始化运行时库,导致部分的函数无法使用。一般的,在VB6等早期的VB开发环境下,使用API创建线程的目的是完成容易使程序假死的大量数据或者逻辑的计算。

异常处理不完善

Visual Basic中内置异常处理,即使未写异常处理代码,一旦用户出错也会弹出一个明确写出出错原因对话框,接着程序终止。

Visual Basic中可以使用Err.Raise抛出异常。对系统及用户抛出的异常的处理常用两种模式:一是使用On Error Resume Next处理错误;另一种是使用On Error Goto将运行引入错误处理代码。但相对C++等语言而言,这样的异常处理破坏了代码的结构。

派生语言

微软开发了一系列由 Visual Basic 所派生的语言:

VBA

Visual Basic for Applications(VBA):包含在微软的应用程序中(如Microsoft Office),以及类似WordPerfect、Office这样第三方的产品里面。VBA这样嵌入在各种应用程序中看起来有些矛盾,但是它的功能和VB一样强大。

VBS

VBScript(VBS):是默认的ASP语言,还可以用在Windows脚本编写和网页编码中。尽管它的语法类似于VB,但是它却是一种完全不同的语言。VBS不使用VB运行库运行,而是由Windows脚本主机解释执行。这两种语言之中的不同点影响ASP网站的表现。

vb.net

Visual Basic.net(vb.net):当微软准备开发一种新的编程工具的时候,第一决定就是利用VB 6.0来进行旧改,或者就是重新组建工程开发新工具。微软后来开发了VB的继任者Visual Basic.net,同时也是.net平台的一部分。vb.net编程语言是一种真正的面向对象编程语言,和VB并不完全兼容。

Visual Basic.net(vb.net) 是新一代的VB语言,并不只是 VB 6.0 的简单升级,vb.net 与 VB (泛指 VB 6.0 之前的版本) 之间有非常大的区别。其新特性主要表现在以下几方面:

1.vb.net完全集成到Visual Studio集成开发环境中,在这种集成开发环境与VB在若干方面有差异。主要体现在窗体的布局以及菜单等方面都有所不同

2.vb.net项目与VB不同。它使用基于文件夹的模型,所有项目均放置在项目文件夹层次结构中。

3.vb.net中使用ado.net来访问数据库,ado.net是.netFramework的一部分。在vb.net中实现数据访问的方法主要有两种:其一是在程序设计阶段,通过创建、配置数据适配器DataAdapter和生成数据集DataSet;其二是在运行中,通过编程方式动态创建配置数据适配器和创建、生成数据集。

4.在vb.net中是使用asp.net技术来编写Web页面的。在asp.net中使用的也不是脚本语言,而是真正意义的编程语言。凭借asp.net的Web应用程序、XML Web Services等基于Web的功能,使得 vb.net 开发 Web 页面与开发Windows 应用程序很相似,Web页面代码也显得有条有理了。

5.vb.net已经成为完全的面向对象的编程语言,并且新增更多语言特性。

Visual Basic.net有提供转换精灵,协助开发者将VB 6.0的程序代码转换为vb.net相对应之程序代码。

特色功能

语言特色

制作应用程序安装盘等为用户提供了友好的集成开发环境,具体表现在:

可视化的设计平台:在使用传统的程序设计语言编程时,一般需要通过编写程序来设计应用程序的界面(如界面的外观和位置等),在设计过程中看不见界面的实际效果。而在Visual Basic 6.0中,采用面向对象程序设计方法(Object-Oriented Programming),把程序和数据封装起来作为一个对象,每个对象都是可视的。开发人员在界面设计时,可以直接用Visual Basic 6.0的工具箱在屏幕上"画"出窗口、菜单、命令按键等不同类型的对象,并为每个对象设置属性。开发人员要做的仅仅是对要完成事件过程的对象进行编写代码,因而程序设计的效率可大大提高。

事件驱动的编程机制:面向过程的程序是由一个主程序和若干个子程序及函数组成的。程序运行时总是先从主程序开始,由主程序调用子程序和函数,开发人员在编程时必须事先确定整个程序的执行顺序。而Visual Basic 6.0事件驱动的编程是针对用户触发某个对象的相关事件进行编码,每个事件都可以驱动一段程序的运行。开发人员只要编写响应用户动作的代码。这样的应用程序代码精简,比较容易编写与维护。

结构化的程序设计语言:Visual Basic 6.0具有丰富的数据类型和众多的内部函数。其采用模块化和结构化程序设计语言,结构清晰,语法简单,容易学习。

强大的数据库功能:Visual Basic 6.0利用数据控件可以访问Access、FoxPro等多种数据库系统,也可以访问Excel、Lotus等多种电子表格。

ActiveX技术:ActiveX发展了原有的OLE技术,使开发人员摆脱了特定语言的束缚,方便地使用其他应用程序提供的功能,使Visual Basic 6.0能够开发集声音、图像、动画、字处理、电子表格、Web等对象于一体的应用程序。

网络功能:Visual Basic 6.0提供的DHTML(动态HTML)设计工具可以使开发者动态地创建和编辑Web页面,使用户能开发出多功能的网络应用软件。

本百科词条由网站注册用户【 知识小玲 】编辑上传提供,当前页面所展示的词条介绍涉及宣传内容属于注册用户个人编辑行为,网站不完全保证内容信息的准确性、真实性,也不代表本站立场。 版权声明 反馈 我要认领
词条所在榜单
您还未登录,依《网络安全法》相关要求,请您登录账户后再提交发布信息。点击登录>>如您还未注册,可点击注册>>,感谢您的理解及支持!
最新评论
暂无评论
相关知识文章
十大热门编程语言排名 编程语言排行榜2023 编程语言哪个前景好
全世界有数种编程语言,但最常用的还是那几种。如今随着时代的发展,一些编程语言的受欢迎程度也发生着微妙的变化。本文中maiGoo小编就带大家看...
十大免费视频网站 在线视频网站盘点 免费看视频网站有哪些
中国互联网络信息中心发布的《中国互联网络发展状况统计报告》显示,我国网络视频用户已超过8.5亿,其中短视频用户规模超过7.73亿。除了抖音、...
1065万+
十大好用的b2b网站 b2b电子商务平台排名 b2b商务平台有哪些
B2B是电子商务最成熟的商业模式之一。Maigoo网编辑从百度发布的《B2B行业洞察报告》获悉,机械工业、建材家装、水暖电工等等,是需求量最...
十大二手书交易网站 旧书网站推荐 卖二手书去哪个网站好
伴随90后、00后新消费主力人群的形成,各大二手交易平台逐渐年轻化,出售闲置物品也更加多元,除了交易数量较多的汽车、数码、服装等商品外,图书...
十大游戏交易平台排行榜 正规游戏账号交易平台 热门游戏交易平台
游戏交易平台有官方的,也有第三方的,无论选择哪一种,“安全交易”都是至关重要的,下面CNPP小编带大家了解下游戏交易平台有哪些、游戏交易平台...
国内十大电影下载网站 电影下载网站哪个最好 电影下载网站排行
随着国内版权意识的苏醒,以及各种“严打”,各个电影下载网站岌岌可危,那至今存活的电影下载网站哪个最好呢?Maigoo小编就为大家带来了国内十...
48万+
十大日本动漫网站 动漫追番网站盘点 看日本动漫什么网站好
追番人数、评分和播放量一直是评价一部动漫是否优秀的三个重要指标。在大批动漫网站平台中,你常用哪个网站来看优质日漫?最适合追番的网站有哪些?本...
124万+
十大欧美网站 国外网站排名 知名海外网站有哪些
互联网起源于20世纪60年代末的美国阿帕网,发展至21世纪,它已与各行各业息息相关,影响着全世界的发展和社会格局。Maigoo小编在本文中盘...
103万+
十大炒股软件 炒股软件排行榜前十名 股票软件哪个最好用
炒股软件哪个最好?市面上的股票软件众多,而对于分析行情走势,了解市场的动态,选择一款好的炒股软件很重要,那么最好的股票app有哪些?下面Ma...
46万+
十大手游交易平台排行榜 靠谱的手游交易平台 正规手游交易平台推荐
近些年手机游戏市场规模逐年增长,游戏装备交易、账号交易,已是屡见不鲜。那么手游交易平台有哪些呢,手游交易平台哪个好?下面maigoo小编就和...
十大可以赚钱的软件 十大赚钱软件排名 有什么能赚钱的软件
你在手机上消磨时间,而有人已经在手机上赚到了生活费。下面就跟随Maigoo小编来看看挣钱的软件有哪些、适合学生赚钱的软件有哪几个。热门且合法...
55万+
十大电影网站排名 免费看电影网站推荐 在线电影网站有哪些
近年,我国网络视频用户量稳步增长,已超出8.5亿,占网民整体的94.1%。在线电影网站行业中,爱奇艺、腾讯视频、优酷三大电影网站市场份额最高...
330万+
十大最好玩小程序游戏 微信小程序游戏排行 最火微信小游戏推荐
微信小程序游戏是时下最主流的休闲方式之一。要说最火小程序游戏,如羊了个羊、肥鹅健身房、动物餐厅、成语小秀才、旅行串串、腾讯桌球等,均名列其中...
十大图片网站排行榜 图片素材网站推荐 高清图片网站有哪些
图片素材通常没有突出的主题,但经过设计师的加工后,就成为了一件完整的作品。一个好的图片素材能让设计作品的完工起到事半功倍的效果。本文中mai...
最受男士喜爱的十大网站 男人上网常用的网站
全世界的男人喜欢什么网站?这其实没有标准答案,毕竟多数人的爱好,以及对事物的关注点都是不同的。不过话又说回来了,男人之间更容易相互了解,也存...
64万+
十大录屏软件 录屏软件哪个好 屏幕录制软件哪个好用
随着电脑录屏需求的急剧增长,win10系统的基本普及,电脑基于xbox自带的录屏功能,解决了越来越多人的需求;然而除了这项自带应用外,第三方...
十大最好用的输入法盘点 最受欢迎的输入法排行 十大输入法品牌
输入法是指为将各种符号输入计算机或其他设备(如手机)而采用的编码方法,同时是书写工具克服墨水限制的最终结果,是一种拥有无限墨水的书写工具,是...
十大编程软件排行榜 编程开发工具大全 c语言编程软件有哪些
世界上主流的编程语言有C、Java、Python、C++、C#、Visual Basic、PHP等,针对这些编程语言,又有相对应的Visua...
十大天气预报APP软件 好用的天气app排行 天气预报软件哪个最准确
比达咨询(BDR)研究数据显示,我国移动天气软件以2009-2013年为萌芽期,各类天气预报app相继衍生,到2016年得益于大数据、物联网...
十大壁纸软件排名 电脑壁纸软件哪个好用 动态壁纸软件有哪些
无论是早年的Win7,还是逐渐普及开来的Win10,许多用户仍然对原生桌面的美观性有着一成不变的追求,进而使用起了第三方美化工具,如各类动态...