Visual Basic
VisualBasic是一种由微软公司开发的包含协助开发环境的事件驱动编程语言。从任何标准来说,VB都是世界上使用人数最多的语言——不仅是盛赞VB的开发者还是抱怨VB的开发者的数量。它源自于BASIC编程语言。VB拥有图形用户界面(GUI)和快速应用程序开发(RAD)系统,可以轻易的使用DAO、RDO、ADO连接数据库,或者轻松的创建ActiveX控件。程序员可以轻松的使用VB提供的组件快速建立一个应用程序。
1、发展历史
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程序可以被我们直接拿来使用
VisualBasic各版本界面(8张)2002年开始,微软将.NETFramework与VisualBasic结合而成为VisualBasic.NET(vb.net),重新打造VB,新增许多特性及语法,又将VB推向一个新的高度。最新版本VisualBasic2012也将带来许多令人期待的新功能。
通过几年的发展,它已成为一种专业化的开发语言和环境。用户可用VisualBasic快速创建Windows程序,并可编写企业水平的客户端/服务器程序及强大的数据库应用程序。
2、语言特性
VB的中心思想就是要便于程序员使用,无论是新手或者专家。VB使用了可以简单建立应用程序的GUI系统,但是又可以开发相当复杂的程序。VB的程序是一种基于窗体的可视化组件安排的联合,并且增加代码来指定组件的属性和方法。因为默认的属性和方法已经有一部分定义在了组件内,所以程序员不用写多少代码就可以完成一个简单的程序。过去的版本里面VB程序的性能问题一直被放在了桌面上,但是随着计算机速度的飞速增加,关于性能的争论已经越来越少。
窗体控件的增加和改变可以用拖放技术实现。一个排列满控件的工具箱用来显示可用控件(比如文本框或者按钮)。每个控件都有自己的属性和事件。默认的属性值会在控件创建的时候提供,但是程序员也可以进行更改。很多的属性值可以在运行时候随着用户的动作和修改进行改动,这样就形成了一个动态的程序。举个例子来说:窗体的大小改变事件中加入了可以改变控件位置的代码,在运行时候每当用户更改窗口大小,控件也会随之改变位置。在文本框中的文字改变事件中加入相应的代码,程序就能够在文字输入的时候自动翻译或者阻止某些字符的输入。
VB的程序可以包含一个或多个窗体,或者是一个主窗体和多个子窗体,类似于操作系统的样子。有很少功能的对话框窗口(比如没有最大化和最小化按钮的窗体)可以用来提供弹出功能。
VB的组件既可以拥有用户界面,也可以没有。这样一来服务器端程序就可以处理增加的模块。
VB使用参数计算的方法来进行垃圾收集,这个方法中包含有大量的对象,提供基本的面向对象支持。因为越来越多组件的出现,程序员可以选用自己需要的扩展库。和有些语言不一样,VB对大小写不敏感,但是能自动转换关键词到标准的大小写状态,以及强制使得符号表入口的实体的变量名称遵循书写规则。默认情况下字符串的比较是对大小写敏感的,但是可以关闭这个功能。
VB使得大量的外界控件有了自己的生存空间。大量的第三方控件针对VB提供。VB也提供了建立、使用和重用这些控件的方法,但是由于语言问题,从一个应用程序创建另外一个并不简单。
3、语言争议
程序员中,对于各种语言孰优孰劣的争论并不少见,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虚拟机的支持。