侵权投诉
首页 / 百科 / Visual Basic
Visual Basic

Visual Basic

分类: 工控
属性: 产品
最后修改时间: 2016年07月28日
本词条对我有帮助0
Visual Basic是一种由 微软公司开发的结构化的、模块化的、面向对象的、包含协助开发环境的事件驱动为机制的可视化程序设计语言。这是一种可用于微软自家产品开发的语言。它源自于BASIC编程语言。VB拥有图形用户界面(GUI)和快速应用程序开发(RAD)系统,可以轻易的使用DAO、RDO、ADO连接数据库,或者轻松的创建Active X控件。程序员可以轻松的使用VB提供的组件快速建立一个应用程序。

  发展历程

  1991年,微软公司推出了VisualBasic1.0。当时引起了很大的轰动。这个连接编程语言和用户界面的进步被称为Tripod(有些时候叫做Ruby),最初的设计是由阿兰·库珀(AlanCooper)完成的。

  许多专家把VB的出现当做是软件开发史上的一个具有划时代意义的事件。在当时,它是第一个“可视”的编程软件。这使得程序员欣喜之极,都尝试在VB的平台上进行软件创作。

  微软也不失时机地在四年内接连推出2.0、3.0、4.0三个版本。并且从VB3.0开始,微软将Access的数据库驱动集成到了VB中,这使得VB的数据库编程能力大大提高。从VB4.0开始,VB也引入了面向对象的程序设计思想。VB功能强大,学习简单。而且,VB还引入了“控件”的概念,使得大量已经编好的VB程序可以被我们直接拿来使用。

  2002年开始,微软将.NETFramework与VisualBasic结合而成为VisualBasic.NET(vb.net),重新打造VB,新增许多特性及语法,又将VB推向一个新的高度。最新版本VisualBasic2012也将带来许多令人期待的新功能。

  通过几年的发展,它已成为一种专业化的开发语言和环境。用户可用VisualBasic快速创建Windows程序,并可编写企业水平的客户端/服务器程序及强大的数据库应用程序。

  VisualBasic1.0

  1991——西雅图夜空的雷电

  随着Windows3.0的推出,越来越多的开发商对这个图形界面的操作系统产生了兴趣,大量的Windows应用程序开始涌现。但是,Windows程序的开发相对于传统的DOS有很大的不同,开发者必须将很多精力放在开发GUI上,这让很多希望学习Windows开发的人员怯步。1991年,微软公司展示了一个叫Thunder的产品,所有的开发者都惊呆了,它竟然可以用鼠标“画”出所需的用户界面,然后用简单的BASIC语言编写业务逻辑,就生成一个完整的应用程序。这种全新的“Visual”的开发就像雷电(Thunder)一样,给Windows开发人员开辟了新的天地。这个产品最终被定名为VisualBasic,采用事件驱动,QuickBASIC的语法和可视化的IDE。VisualBasic1.0带来的最新的开发体验就是事件驱动,它不同于传统的过程式开发。同时,VBX控件让可视化组件的概念进入VisualBasic。VisualBasic1.0是革命性的BASIC,它的诞生也是VB史上的一段佳话。

  VisualBasic2.0

  1992——渐入佳境

  由于Windows3.1的推出,Windows已经充分获得了用户的认可,Windows开发也进入一个新的时代。VisualBasic1.0的功能过于简单,相对于Windows3.1的强大功能没有发挥出来。所以,微软在1992年推出了新版本VisualBasic2.0。这个版本最大的改进就是加入了对象型变量,比如下面的两行代码:

  DimCommand1AsCommandButton

  DimcAsControl

  不光如此,而且有了最原始的“继承”概念,对象型变量分为一般类型(Control和Form)和专有类型(CommandButton和Form1等)。一般类型的变量可以引用专有类型的实例,甚至通过后期绑定访问专有类型的属性和方法;还可以通过TypeOf…Is运算符获取对象实例的运行时类型信息(这个功能就是当今C#的is运算符或Java的instanceof运算符)。除了对语言的改进和扩充,VisualBasic2.0对VBX有了很好的支持,许多第三方控件涌现出来,极大地丰富了VisualBasic的功能。微软还为VisualBasic2.0增加了OLE和简单的数据访问功能。

  VisualBasic3.0

  1993——数据库组件新添力量

  VisualBasic2.0推出没几个月,微软就发布了新版本的VisualBasic3.0,可以看出VB这时候旺盛的生命力。乍一看,VisualBasic3.0的界面没有太大的变化,但其实这个版本是非常及时的。它增加了最新的ODBC2.0的支持,Jet数据引擎的支持和新版本OLE的支持。最吸引人的地方是它对数据库的支持大大增强了,Grid控件和数据控件能够创建出色的数据窗口应用程序,而Jet引擎让VisualBasic能对最新的Access数据库快速地访问。VisualBasic3.0还增加了许多新的金融函数。此外还增加了相当多的专业级控件,可以开发出相当水平的Windows应用程序。VisualBasic3.0是98年以前中国最流行的VisualBasic版本,因为它开发出来的可执行文件非常小,通常能用一张软盘装下。不过,VisualBasic采用虚拟机运行P代码的做法也让很多开发者不满,他们认为这样程序运行的效率很低,这时候VisualBasic的竞争者Delphi也诞生了。

  VisualBasic4.0

  1995——第二次革命性变化,向COM进军

  从1993年到1995年2年中,VisualBasic一直没有新的动静,焦急的开发者都想一窥这个神秘的新版本到底发生了什么变化。VisualBasic4.0的BETA最后终于和大家见面了。这个版本包含了16位和32位两个版本,16位的版本就像是VisualBasic3.0的升级版,而32位版则是一场新的革命。首先,人们发现VBX控件不见了,全部换成了OCX控件,这个OCX可能是指OLECustomControls,这个OLE已经不是传统的OLE了,就是COM控件。第二个最大变化是VisualBasic4.0所用的语言换成了VisualBasicForApplication,这就和Office95所采用的宏语言统一起来,这个新语言有很多亮点:

  1、加入了“类模块”。这是面向对象最重要的封装性的基础。

  2、加入了属性过程,加上函数过程,子程序过程,VB已经有组件开发所需的封装性特征。

  3、加入了Byte、Boolean和Object类型。这大大完善了VB的类型系统。

  4、ForEach语句和Collection对象。ForEach语句给遍历集合类型提供了极大的方便,在动态增长的Collection上使用ForEach,而不用担心集合内容的总数或烦人的下标问题。

  这个版本的VisualBasic还能够开发DLL工程,其实就是COM的DLL,可以将书写好的类用这种方式和其他语言共享。

  总之,这个4.0的版本为VisualBasic成为一种COM语言奠定了基础。用VisualBasic4.0开发基于COM的DLL比任何一种开发工具都方便。但是,VisualBasic4.0的性能问题变得更加严重了,P-代码的组件成为VisualBasic4.0严重的性能瓶颈,而且巨大的运行库也让用户感到不满。VisualBasic4.0对以前版本的支持也不好,使用了大量VBX的项目很难移植到VisualBasic4.0中。因此,VisualBasic4.0在中国的普及程度非常低。

  VisualBasic5.0

  1997——VisualBasic的丰收年

  1997年,微软推出了VisualBasic5.0,这个版本的重要性几乎和4.0一样高。COM(这时候叫ActiveX)已经相当成熟,VisualBasic5.0当然对它提供了最强的支持。不过,国内还没有意识到COM的重要性前主要对这个版本另一个最大的亮点十分关注:本地代码编译器。VisualBasic5.0终于在用户的呼声中加入了一个本地代码编译器,它可以让应用程序的效率大大提升。除了这个大家都知道的改进以外,VisualBasic5.0对VisualBasicForApplication语言有重大的完善和丰富:

  1、事件。VisualBasic5.0终于允许用户自己创建事件,而且这事件的语法相当强健和完善,这在一种不支持函数回调的语言中是很难得的。VB拥有属性、方法和事件的完整封装性。

  2、接口。这是VB实现多态性的基础。同时为编写COM组件提供了更多方便。

  3、枚举。在VisualBasic5.0中枚举作为Long整型的子类型出现,用枚举可以对常量进行完善的封装。

  4、类模块的改进。通过类模块的属性可以指定类模块具有多种指定的行为,如私有构造函数等,可以通过这个功能创建符合Singleton和Monostate模式的设计。

  5、Debug.Assert。虽然这个断言系统有点鸡肋,但是总算是给调试带来了方便。

  6、VisualBasic5.0支持创建自己的集合类。可以创建用于ForEach语句的集合类型。

  7、新的数据类型Decimal,可以精确地处理有效数位较多的计算。

  VisualBasic5.0的IDE支持“智能感知”,这是一项非常方便开发者的功能,可以不必记住很长的成员名称和关键字,只要按“.”,想要的东西统统弹出来。

  VisualBasic5.0还支持开发自己的ActiveX控件、进程内的COMDLL组件、进程外的COMEXE组件以及在浏览器中运行的ActiveX文档。这极大丰富了VisualBasic的开发能力,在Internet开发上,VisualBasic5.0也能有所建树。

  VisualBasic6.0

  VisualBasic6.0主界面

  VisualBasic6.0主界面

  1998——企业真正高效的源泉

  VisualBasic6.0作为VisualStudio6.0的一员发布,证明微软正在改变VisualBasic的产品定位,他想让VisualBasic成为企业级快速开发的利器。VisualBasic6.0在数据访问方面有了很大的改进,新的ADO组件让对大量数据快速访问成为可能。数据环境和新的报表功能也让数据开发有了全新的体验。VisualBasic借助COM/COM+强大的功能,可以开发具有N层结构的分布式应用程序。同时,VisualBasic还可以在IIS上开发性能超群的Web应用程序。VisualBasic6.0在语言方面和IDE方面的改进都不大,但是许多新增的组件成为VisualBasic开发人员手中的利器,如FileSystemObject等。新的字符串函数Split和Replace等也给VisualBasic的程序员带来很大方便。

  总之VisualBasic6.0已经是非常成熟稳定的开发系统,能让企业快速建立多层的系统以及Web应用程序,成为当前Windows上最流行的VisualBasic版本。(目前全国计算机二级考试所用的VB版本也是VisualBasic6.0)

  VisualBasic6.0安装教程

  1、准备工作:下载软件

  2、安装VisualBasic6.0的步骤

  ①把下载的压缩包解压出来。

  ②在解压出来的文件夹中双击文件“SETUP.EXE”执行安装程序。出现VB的安装向导。

  ③直接点击“下一步”,选中“接受协议”,再点击“下一步”。

  ④在产品的ID号中全部输入“1”(用一串“1”把两个空格都填写满),姓名和公司名称任意填,再点击“下一步”。

  ⑤选中“安装VisualBasic6.0中文企业版”,再点击“下一步”。

  ⑥一般情况下直接点击“下一步”(公用文件的文件夹可以不需要改变),稍等...,直接点击“继续”,直接点击“确定”,直接点击“是”。

  ⑦选择“典型安装”或“自定义安装”,初学者可以选前者。在弹出对话框中直接点击“是”。

  ⑧在弹出的对话框中,点击“重新启动Windows”。

  继续下一步安装

  3、安装MSDN(帮助文件)

  MSDN安装包并不包含在VB企业版中,需要另外下载!

  ①重装启动计算机后,在出现的VB安装界面中可以直接安装帮助文件,选中“安装MSDN”项,再点击“下一步”。

  ②在弹出的对话框中按“浏览”,找到“MSDNforVB6.0”文件夹。

  ③按“继续”按钮,再按“确定”,选中“接受协议”。

  ④按“自定义安装”,在“VB6.0帮助文件”前打钩,再点击“继续”。

  ⑤完成MSDN的安装,点击“确定”。

  ⑥直接点击“下一步”,把“现在注册”项去掉,再点击“完成”,即完成了VB的安装

  VisualBasic6.0中文企业版

  VisualBasic6.0中文企业版

  。

  4、安装补丁程序

  安装VB补丁程序这非常重要,它可以避免许多错误,并可以直接使用Access2000,否则要转换到低版本的Access数据库。

  ①运行下载下来的VB60SP6-KB957924-v2-x86-CHS.msi文件,如果运行有问题,需要安装WindowsInstaller。

  ②在弹出的对话框中按“继续”,再按“接受”许可协议。

  ③按“确定”,完成VB补丁程序的安装。

  5、添加或删除VisualBasic6.0组件

  在VB6.0安装完成后,可能还会遇到需添加未安装组件或删除不再需要组件的情况,此时需做添加或删除操作。

  ①再次运行VB6.0安装程序。

  ②选择“工作站工具和组件”选项后,打开“添加/删除”对话框。

  ③根据需要单击对话框中的“添加/删除”、“重新安装”或“全部删除”按钮。

  ④单击“确定”按钮完成添加/删除工作。

  VisualBasic.NET

  2002——第三次革命性变化,向.NET进军

  从1998年发布到2002年正式推出VisualBasic.NET简直吊足了开发者的胃口。从2000年就开始传言的具有继承、Try…Catch语句等新功能的全新VB7.0一直没有露面。直到2001年,VisualStudio.NET的第一个Beta版问世的时候,所有人都呆了——这是VisualBasic吗?And语句变成了BitAnd,数组只能从0下标开始,而且连Dim语句的意义都变了,几乎所有的窗体控件都变了,Long变成了Integer而Integer变成了Short,Variant不见了,Static不能用了……简直是翻天覆地,人们已经无暇关注这个版本有什么改进,转而担心我怎么才能接受这个版本了。其实VisualBasic.NET完全是为了.NETFramework这一全新的平台而设计的,VisualBasic.NET的设计者一开始没有掌握好新平台和旧语言的平衡。到了Beta2中,很多东西回归了6.0,如BitAnd又变回了And,数组的定义语句也变回了原有的意义,Static也回到了VisualBasic中。但是Beta1惊人的变化让所有的VB开发者怕了,他们觉得这种语言被改的千疮百孔,有些人干脆转去研究传说中的新语言C#。但是VisualBasic.NET渡过几个Beta版本之后还是找到了正确的定位。VisualBasic.NET有对CLR最完善的支持,同时尽量保留着BASIC易懂的语法风格和易用性。VisualBasic.NET经常被微软高管用来比拟上世纪80年代的视窗系统。这个版本新增加的功能已经数不清,最重要的几个是:

  1、继承。至此,VisualBasic完成了向面向对象转变的道路。

  2、共享成员。

  3、Try…Catch结构化异常处理。

  4、Delegate和Interface。

  5、名称空间。

  6、对自由线程的支持。

  特别的是,VisualBasic.NET大大减少了VisualBasic语言的关键字,如GoSub、PSet等等。原先的VisualBasic有多达120个关键字,这给写程序带来了很大的不便,现在经过精简,VisualBasic脱下了这个沉重的包袱。

  VisualBasic.NET现在是一门现代的、强壮的、面向对象的、简单的可视化开发语言。强大的语言功能吸引了很多开发者。历史是在不断重演的,VisualBasic.NET如今的处境和VisualBasic4.0很相似,由于兼容性变差,人气也降低了。同时由于依附于.NETFramework,程序发布造成了一定的困难。现在国内使用VisualBasic.NET的人相对于VisualBasic6.0来讲显得很少。但是凭借VisualBasic.NET强大的语言功能和MS的支持,VisualBasic.NET一定会显出它的光辉来。

  VisualBasic.NET2003

  2003——稳中求变的新版本

  VisualBasic.NET2003是一个相当稳重的版本,改变很少,但对小处有很多改进。首先VisualBasic6.0升级向导做了很大改进,这给从老版本痛苦升级的人带来了更多一些的希望。其次在IDE方面,VisualBasic.NET2003修正了许多错误,还让事件处理恢复了6.0的开发体验。语言方面只有两项改进:

  1、在For、ForEach语句中声明循环变量。

  2、增加了数学移位运算符"<<"和">>"。

  在这个比较成熟稳定的新版本下,许多VisualBasic的爱好者开始重新了解VisualBasic.NET,社区里面也渐渐热闹起来。但是,有些使用C#的开发者坚持认为VisualBasic.NET是垃圾,尽管当时的VisualBasic.NET拥有比C#更多的功能和更好的IDE(IntegratedDevelopment,集成开发环境)。这说明程序员们不了解VisualBasic.NET成为它普及的最大障碍。

  VisualBasic2005

  2005——完美主义的VisualBasic

  为了让VisualBasic有最佳的开发体验,VisualBasic2005的设计者绞尽了脑汁。这次VisualBasic2005光语言上的改进就足以让VisualBasic的开发人员高兴一阵子。

  VisualBasic2005具有下列新增和加强的功能:

  1、泛型。

  2、运算符重载。

  3、PartialClass。

  4、窗体的默认实例。

  5、My伪命名空间。

  6、其他语法的多种改进。

  现在用VisualBasic2005只要一行代码就可以读写注册表、访问文件、读写串口、获取应用程序信息……用VisualBasic2005完全可以称作享受开发。而泛型、运算符重载等功能又可以让VisualBasic的开发人员深入.NETFramework的全部功能,开发出最优秀的应用程序。

  VisualBasic2008

  2008——功能极强又简单易用

  VisualBasic2008具有下列新增和加强的功能:

  1、Language-integratedquery(LINQ)。

  2、物件关联式设计工具会协助开发人员建立和编辑,使应用程序连接至资料库的linktosql类别。

  3、Lambda表达式。

  4、XML数据结构。

  VisualBasic2010

  2010——下一代开发平台

  VisualBasic2010具有下列新增和加强的功能:

  1、数组初始值设定项。

  2、集合初始值设定项。

  3、内联Lambda表达式。

  4、自动实现属性。

  5、泛化。

  6、No-PIA部署。

  7、与Python的集成。

  8、并行计算扩展。

  VisualBasic2012(RC)

  VisualBasic2012RC具有下列新增和加强的功能:

  1、异步功能

  2、迭代器

  3、调用层次结构

  4、调用方信息

  5、全局命名空间语句中的关键字

  VisualBasic2013

  主要新功能

  1支持Windows8.1App开发

  2敏捷项目管理(AgilePortfolioManagement)

  3版本控制

  4轻量代码注释(lightweightcodecommenting)

  5整合微软SystemCenterIT管理平台

  6定价与许可

  语言标准

  注释方式

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

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

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

  如:Msgbox"答案是"&a+b,vbinformation,"A+Bproblem"'弹出a+b的结果

  特征衡量

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

  事件(Event)

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

  方法(Method)

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

  属性(Property)

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

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

  对象与类

  对象(Object)

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

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

  类(Class)

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

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

  相关控件

  窗体项目。所以VisualBasic中的控件大多和窗体项目有关。

  分类

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

  内置控件

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

  ActiveX控件

  ActiveX控件包含不同版本VisualBasic提供的控件和仅在专业版、企业版中提供的控件,并且还包含第三方提供的控件。

  ActiveX控件是对VisualBasic内置控件的扩充,开发人员可以根据个人需要进行随意扩充,扩充的ActiveX控件将在工具箱中显示。

  在工具箱中添加ActiveX控件的流程如下。

  (1)打开一个VisualBasic6.0项目,一次选择【工程】->【部件】命令,在弹出的“部件”对话框中选择“控件”选项卡,在列表框中选择要添加的ActiveX控件

  (2)返回VisualBasic主界面,此时添加的ActiveX控件已被添加到工具箱内

  可插入对象

  在VisualBasic的工具栏中,可以放置其他的第三方对象,可以像使用控件一样轻松使用。添加后的对象也在工具箱中显示,添加对象的方法和添加ActiveX控件类似,只要依次选择【工程】->【部件】命令,在弹出的“部件”对话框中选择“可插入对象”选项卡,再选择添加的对象即可。

  有关第三方对象,可以从受信任的来源下载控件,并通过添加引用来导入。支持这些自定义的Vb的控件有:ComponentOneStudio,Spread,ActiveReports、MultiRow等。

  语言特点

  基本特点

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

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

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

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

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

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

  语言缺点

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

  不支持继承

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

  无原生支持多线程

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

  异常处理不完善

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

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

  派生语言

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

  VBA

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

  VBS

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

  vb.net

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

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

  1.vb.net完全集成到VisualStudio集成开发环境中,在这种集成开发环境与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应用程序、XMLWebServices等基于Web的功能,使得vb.net开发Web页面与开发Windows应用程序很相似,Web页面代码也显得有条有理了。

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

  VisualBasic.NET有提供转换精灵,协助开发者将VB6.0的程序代码转换为vb.net相对应之程序代码。

  语言争议

  程序员中,对于各种语言孰优孰劣的争论并不少见,VisualBasic更是成为了一种充满了争议的语言。

  反方观点

  一些批评家认为VisualBasic是一种给儿童和菜鸟程序员的语言,它自从设计开始就是一种简单的语言。一些C++和Java中的特性在VB中并没有出现。在感受开发的方便和快速的同时,一些类似于编译时进行类型和声明检查的功能在默认情况下是关闭的。这样一些程序员一边感叹VB的易用性,一边沮丧地看着一些类似于“未定义类型”错误的发生。

  一些批评家认为VisualBasic的简单特性使得其在未来具有伤害性。很多人自学了VB,但是并没有学到好的编程习惯。当VB进入课堂的时候,学生们不会学到很多基础的程序技术和结构,因为很多技术已经包含在那些对用户可见的组件里面了。不用学习标准的编程习惯,因为VB具有可视化的特性,所以导致了一些莫名其妙的代码的产生。而且很多错误和警告的检查默认情况下都是关闭的,程序员很难找到隐藏的错误。有经验的程序员在用VB编程的时候都会把这些选项打开。

  一些批评家批评微软简单地拷贝了BASIC的思想到VisualBasic中。

  VisualBasic开发的程序只能运行在MicrosoftWindows中;且运行时还需要VB运行库。

  VisualBasic不能很好的综合Windows的基础API,很多时候要使用低级运算的“小伎俩”来进行编程。而C语言的低级内存运算比VB的要简单得多。

  VB语言作为计算机语言的入门,是很多学生学习编程的入门级语言,大学生利用VB语言开始了他们学习计算机的世界。

  正方观点

  任何工具都是针对不同任务发明的,如同刀剑和锄头,刀剑高手未必是锄地高手,刀剑高手除了杀人,不能生产粮食养人,所以任何工具歧视都是错误的。VisualBasic的强大在于能够快速开发企业级软件,使程序员有更多的时间和精力考虑用户的需求,生产出满足用户需要的软件,特别适合大型企业级软件的开发,比如MIS、MRP、MRPII、ERP等重量级的软件,而不是花很长时间去制作一个只有几K的DLL。

  VisualBasic的最大的优势在于它的易用性,可以让经验丰富的VB程序员或是刚刚懂得皮毛的人都能用自己的方式快速开发程序。而且VB的程序可以非常简单的和数据库连接。比如利用控件可以绑定数据库,这样一来用VB写出的程序就可以掌握数据库的所有信息而不用写一行代码。

  VisualBasic开发的程序虽然仅在MicrosoftWindows中得到原生支持,但Linux等平台中存在着一些项目,使得能够使用VisualBasic的代码在这些平台下顺利编译。

  任何语言开发的程序都需要一定运行时环境的支持,对于大型软件系统来说,需要支撑是很正常的,正所谓“站在巨人的肩膀上”。传统VisualBasic开发的程序需要VB运行库的支持;VisualBasic.NET开发的程序(如C#)需要.NetFramework的支持;Java开发的程序需要Java虚拟机的支持

  • 快速搜索
  • 热门词条

粤公网安备 44030502002758号