Visual Basic编程语言
Visual 意为可视的、可见的,指的是开发像Windows
操作系统
的图形用户
界面
(Graphic User Interface,简称GUI)的方法,它与其他编程
软件
不同的是不需要编写大量代码去描述界面元素的外观和位置,只要把预先建立好的
对象
拖放到屏幕上相应的位置即可。应该说,这是一次质的飞跃,是一次
编程技术
的革命。
Visual Basic 6 有学习版、专业版和企业版三种版本,以满足不同的开发需要。学习版适用于普通学习者及大多数使用 Visual Basic 开发一般 Windows
应用程序
的人员;专业版适用于
计算机
专业开发人员,包括了学习版的全部内容功能以及Internet控件开发工具之类的高级特性;企业版除包含专业版全部的内容外,还有自动化构件管理器等工具,使得专业编程人员能够开发功能强大的组骨子里
分布式应用程序
。
但是,功能再强大,Visual Basic 仍然有一个缺点:在没有MSVBVM**.DLL的计算机上必须安装所需的
DLL文件
(同样
Visual C++
在没有MSVCRT*.DLL情况下亦无法运行)。不过在Windows 2000之后,这个DLL就被预置到操作系统中了,一般来说,程序如果只使用了VB内部的控件和对象,那么基本上不会有太大的问题。
在21世纪初,Microsoft 公司推出 Visual Studio
.NET
2003,它与 Visual Basic 之间有了重大变化,Visual Studio 为各种编程工具做了一个平台,Visual Basic .NET 可在这种平台上运行。相对于传统VB,有很大的不同。VB .Net首次使用.Net构架进行可视化编程,并且能很好地与COM构架兼容,Visual Studio .NET 2003 应用 .NET Framework 1.1 。
2005年, Visual Studio 2005 采用了 NET 2.0 的技术,更加地方便了
程序员
的工作。可是新的程序对
系统配置
要求也较高,需要微软.Net Framework 2.0以上的.Net构架支持。
2007年12月,微软(Microsoft)推出了Visual Studio 2008 Beta 2 发生了重大的变化(见附图),在代码输入的时候,可以比VB2005快很多,在非特殊的情况下,VB2008都会自动开启,自动完成关键字,而且这个命令支持最新的 .NET
Framework
3.5 SP1 Beta。
2010年4月12日,Visual Studio 2010版本上市,其集成开发环境(IDE)的界面被重新设计和组织,变得更加简单明了。Visual Studio 2010同时带来了 NET Framework 4.0、Microsoft Visual Studio 2010 CTP( Community Technology Preview--CTP),并且支持开发面向Windows 7的应用程序。除了Microsoft sql Server,它还支持 IBM DB2和Oracle数据库。
由VB派生的语言
Visual Basic for Applications,即
VBA
,包含在微软的应用程序中(比如Microsoft Office),以及类似WordPerfect Office这样第三方的产品里面。VBA这样嵌入在各种应用程序中看起来有些矛盾,但是它的功能和VB一样强大。
VBScript是ASP的默认语言,还可以用在Windows
脚本
编写(Shell Script)和网页编码(HTML)中。尽管它的语法类似于VB,但是它却是一种完全不同的语言。VBS不使用VB
运行库
运行,而是由
Windows脚本宿主
(wscript.exe - Microsoft Windows Based Script Host)解释执行。这两种语言之中的不同点影响ASP网站的表现。
当微软准备开发一种新的编程工具的时候,第一决定就是利用最抢手的 VB6 来进行修改,或者就是重新组建工程开发新工具。微软后来开发了VB的继任者
Visual Basic .NET
,同时也是.NET平台的一部分。VB .NET
编程语言
是一种真正的
面向对象编程
语言(VB4-VB6 只能称为基于对象而不是面向对象,最明显的特征就是 VB4-VB6 都不支持类的继承),和传统 Visual Basic 并不完全兼容。
VB编程语言历史
Visual Basic从1991年诞生以来,现在已经21年了。Visual Basic 是微软的起家产品,微软当然不忘了这位功臣。随着每一次微软技术的浪潮,Visual Basic都会随之获得新生。可以预见,将来无论微软又发明了什么技术或平台,Visual Basic一定会首先以新的姿态登上去的。如果你想紧跟微软,永远在最新的技术上最快速地开发,你就应该选择Visual Basic。
@H_404_235@1991-西雅图夜空的雷电
随着 Windows 3.0 的推出,越来越多的开发商对这个图形界面的操作系统产生了兴趣,大量的Windows应用程序开始涌现。但是,Windows 程序的开发相对于传统的DOS有很大的不同,开发者必须将很多精力放在开发GUI上,这让很多希望学习Windows开发的人员怯步。1991年,
微软公司
展示了一个叫Thunder的产品,所有的开发者都惊呆了,它竟然可以用鼠标“画”出所需的用户界面,然后用简单的
BASIC语言
编写业务逻辑,就生成一个完整的应用程序。这种全新的“Visual”的开发就像雷电(Thunder)一样,给Windows开发人员开辟了新的天地。这个产品最终被定名为Visual Basic,采用
事件驱动
、Quick BASIC的语法和可视化的IDE。Visual Basic 1.0带来的最新的开发体验就是事件驱动,它不同于传统的过程式开发。同时,VBX控件让可视化组件的概念进入Visual Basic。Visual Basic 1.0是革命性的BASIC,它的诞生也是VB史上的一段佳话。
@H_404_235@Visual Basic 1.0
1992年—渐入佳境的Visual Basic
由于Windows 3.1的推出,Windows已经充分获得了用户的认可,Windows开发也进入一个新的时代。Visual Basic 1.0的功能过于简单,相对于Windows 3.1的强大功能没有发挥出来。所以,微软在1992年推出了新版本Visual Basic 2.0。这个版本最大的改进就是加入了对象型
变量
,比如
Dim b As CommandButton、Dim c As Control 等等,而且有了最原始的“继承”概念,对象型变量分为一般类型(Control和Form)和专有类型(CommandButton和Form等),一般类型的变量可以引用专有类型的实例,甚至通过后期绑定访问专有类型的
属性
和方法。还可以通过TypeOf…Is
运算符
获取对象实例的运行时类型信息(这个功能就是当今C#的is运算符或Java的instanceof运算符)。除了对语言的改进和扩充,Visual Basic 2.0对VBX有了很好的支持,许多第三方控件涌现出来,极大地丰富了Visual Basic的功能。微软还为Visual Basic 2.0增加了OLE和简单的数据访问功能。
Visual Basic 2.0标准版
@H_404_235@Visual Basic 2.0专业版
1993-数据库组件新添力量
Visual Basic 2.0推出没几个月,微软就发布了新版本的Visual Basic 3.0,可以看出VB这时候旺盛的生命力。乍一看,Visual Basic 3.0的界面没有太大的变化,但其实这个版本是非常及时的。它增加了最新的ODBC2.0的支持,Jet数据引擎的支持和新版本OLE的支持。最吸引人的地方是它对数据库的支持大大增强了,Grid控件和数据控件能够创建出色的数据窗口应用程序,而Jet引擎让Visual Basic能对最新的Access数据库快速地访问。Visual Basic 3.0还增加了许多新的金融
函数
。此外还增加了相当多的专业级控件,可以开发出相当水平的Windows应用程序。Visual Basic 3.0是98年以前
中国
最流行的Visual Basic版本,因为它开发出来的
可执行文件
非常小,通常能用一张软盘装下。不过,Visual Basic采用
虚拟机
运行P代码的做法也让很多开发者不满,他们认为这样程序运行的效率很低,这时候Visual Basic的竞争者Delphi也诞生了。
Visual Basic 3.0标准版Visual Basic 3.0 特别版(Visual Basic 4.0 Beta) 1995-第二次革命性变化,向COM进军。
从1993年到1995年年中,Visual Basic一直没有新的动静,焦急的开发者都想一窥这个神秘的新版本到底发生了什么变化。Visual Basic 4.0的Beta版本最后终于和大家见面了。这个版本包含了16位和32位两个版本,16位的版本就像是Visual Basic 3.0的升级版,而32位版则是一场新的革命。首先,人们发现VBX控件不见了,全部换成了OCX控件,这个OCX可能是指OLE Custom Controls,这个OLE已经不是传统的OLE了,用现在的话说,它就是COM控件。第二个最大变化是Visual Basic 4.0所用的语言换成了Visual Basic For Application,这就和Office 95所采用的宏语言统一起来,这个新语言有很多亮点:
1、 加入了“类模块”。这是面向对象最重要的封装性的基础。
3、 加入了Byte类型、Boolean类型和Object类型。这大大完善了VB的类型系统。
4、 For Each语句和Collection对象。For Each语句给遍历集合类型提供了极大的方便,现在可以在
动态
增长的Collection上使用For Each,而不用担心集合内容的总数或烦人的下标问题。
这个版本的Visual Basic还能够开发DLL工程,其实就是COM的DLL,可以将书写好的类用这种方式和其他语言共享。
总之,这个4.0的版本为Visual Basic成为一种COM语言奠定了基础。用Visual Basic 4.0开发基于COM的DLL比任何一种开发工具都方便。但是,Visual Basic 4.0的性能问题变得更加严重了,P-代码的组件成为Visual Basic 4.0严重的性能瓶颈,而且巨大的运行库也让用户感到不满。Visual Basic 4.0对以前版本的支持也不好,使用了大量VBX的项目很难移植到Visual Basic 4.0中。因此,Visual Basic 4.0在中国的普及程度非常低。
@H_404_235@Visual Basic 5.0
1997-Visual Basic的丰收年
1997年,微软推出了Visual Basic 5.0,这个版本的重要性几乎和4.0一样高。COM(这时候叫ActiveX)已经相当成熟,Visual Basic 5.0当然对它提供了最强的支持。不过,国内还没有意识到COM的重要性前主要对这个版本另一个最大的亮点十分关注:本地代码
编译器
。Visual Basic 5.0终于在用户的呼声中加入了一个本地代码编译器,它可以让应用程序的效率大大提升。除了这个大家都知道的改进以外,Visual Basic 5.0对Visual Basic For Application语言有重大的完善和丰富:
9、 Debug.Assert。虽然这个断言系统有点鸡肋,但是总算是给调试带来了方便。
10、 Visual Basic 5.0支持创建自己的集合类。可以创建用于For Each语句的集合类型。
11、新的
数据类型
Decimal,可以精确地处理有效数位较多的计算。Visual Basic 5.0的IDE支持“智能感知”,这是一项非常方便开发者的功能,可以不必记住很长的成员名称和关键字,只要按“.”,想要的东西统统弹出来。 Visual Basic 5.0还支持开发自己的ActiveX 控件、进程内的COM DLL组件、进程外的COM EXE组件以及在
浏览器
中运行的
ActiveX文档
。这极大丰富了Visual Basic的开发能力,在Internet开发上,Visual Basic 5.0也能有所建树。
@H_404_235@Visual Basic 6.0
1998-企业真正高效的源泉
Visual Basic 6.0作为Visual Studio 6.0的一员发布,证明微软正在改变Visual Basic的产品定位,他想让Visual Basic成为企业级快速开发的利器。Visual Basic 6.0在数据访问方面有了很大的改进,新的ADO组件让对大量数据快速访问成为可能。
数据环境
和新的报表功能也让数据开发有了全新的体验。Visual Basic 借助COM/COM+强大的功能,可以开发具有N层结构的分布式应用程序。同时,Visual Basic还可以在IIS上开发性能超群的Web应用程序。Visual Basic 6.0在语言方面和IDE方面的改进都不大,但是许多新增的组件成为Visual Basic开发人员手中的利器,如File System Object等。新的
字符串函数
Split和Replace等也给Visual Basic的程序员带来很大方便。
总之Visual Basic 6.0已经是非常成熟稳定的开发系统,能让企业快速建立多层的系统以及Web应用程序,成为当前 Windows 上最流行的 Visual Basic 版本。
@H_404_235@Visual Basic .NET 2002
2002-第三次革命性变化,向.NET进军
从1998年发布到2002年正式推出Visual Basic. NET简直吊足了开发者的胃口。从2000年就开始传言的具有继承、Try…Catch语句等新功能的全新VB7.0一直没有露面。直到2001年,Visual Studio .NET的第一个BETA版问世的时候,所有人都呆了——这是Visual Basic吗?And语句变成了BitAnd,
数组
只能从0下标开始,而且连Dim语句的意义都变了,几乎所有的窗体控件都变了,Long变成了Integer而Integer变成了Short,Variant不见了,Static不能用了……简直是翻天覆地,人们已经无暇关注这个版本有什么改进,转而担心我怎么才能接受这个版本了。其实Visual Basic. NET完全是为了.NET Framework这一全新的平台而设计的,Visual Basic. NET的设计者一开始没有掌握好新平台和旧语言的平衡。到了BETA2中,很多东西回归了6.0,如BitAnd又变回了And,数组的定义语句也变回了原有的意义,Static也回到了Visual Basic中。但是BETA1惊人的变化让所有的VB开发者怕了,他们觉得这种语言被改的千疮百孔,有些人干脆转去研究传说中的新语言C#。但是Visual Basic. NET渡过几个BETA版本之后还是找到了正确的定位。Visual Basic. NET有对CLR最完善的支持,同时尽量保留着BASIC易懂的语法风格和易用性。这个版本新增加的功能已经数不清,最重要的几个是:
1、 继承。至此,Visual Basic完成了向面向对象转变的道路。
2、 共享成员。
4、 Delegate和Interface。
5、 名称空间。
6、 对自由线程的支持。
特别的是,Visual Basic. NET大大减少了Visual Basi
c语言
的关键字,如GoSub、PSet等等。原先的Visual Basic有多达120个关键字,这给写程序带来了很大的不便,现在经过精简,Visual Basic脱下了这个沉重的包袱。
Visual Basic. NET现在是一门现代的、强壮的、面向对象的、简单的可视化开发语言。强大的语言功能吸引了很多开发者。历史是在不断重演的,Visual Basic. NET如今的处境和Visual Basic 4.0很相似,由于
兼容性
变差,人气也降低了。同时由于依附于.NET Framework,程序发布造成了一定的困难。现在国内使用Visual Basic. NET的人相对于Visual Basic 6.0来讲显得很少。但是凭借Visual Basic. NET强大的语言功能和MS的支持,Visual Basic. NET一定会显出它的光辉来。
@H_404_235@Visual Basic .NET 2003
2003—稳中求变的新版本
Visual Basic. NET 2003是一个相当稳重的版本,改变很少,但对小处有很多改进。首先Visual Basic 6.0升级向导做了很大改进,这给从老版本痛苦升级的人带来了更多一些的希望。其次在IDE方面,Visual Basic. NET 2003修正了许多错误,还让事件处理恢复了6.0的开发体验。语言方面只有两项改进:
1、 在For、For Each语句中声明循环变量。
2、 增加了数学移位运算符<<和>>。
在这个比较成熟稳定的新版本下,许多Visual Basic的爱好和开始重新了解Visual Basic. NET,社区里面也渐渐热闹起来。但是,有些使用C#的开发者坚持认为Visual Basic. NET是垃圾,尽管Visual Basic. NET拥有比C#更多的功能和更好的IDE。这说明不了解Visual Basic. NET成为它普及的最大障碍。
@H_404_235@Visual Basic .NET 2005
2005-完美主义的Visual Basic,能否再现辉煌?
为了让Visual Basic有最佳的开发体验,Visual Basic 2005的设计者绞尽了脑汁。这次Visual Basic 2005光语言上的改进就足以让Visual Basic的开发人员高兴一阵子。大家可以去看看我那篇介绍Visual Basic 2005新增功能的贴子。挑重要的列在下边:
3、 Partial Type
5、 语法的多种改进
6、My关键字
现在用Visual Basic 2005只要一行代码就可以进行读写注册表、访问文件、读写串口、获取应用程序信息等操作……用Visual Basic 2005完全可以称作享受开发。而泛型、运算符重载等功能又可以让Visual Basic的开发人员深入.NET Framework的全部功能,开发出最优秀的应用程序。
@H_404_235@Visual Basic .NET 2008
2008—功能极强且最易用的 Visual Basic
1、Language-integrated query: 可以让使用者在VB2008中进行资料查询。
2、物件关联式设计工具会协助开发人员建立和编辑,使应用程序连接至资料库的 link to sql 类别。
@H_404_235@Visual Basic .NET 2010
Microsoft公司在2010年10月宣布正式命名下一代开发平台和工具为 Microsoft .NET Framework 4.0 以及 Visual Studio 2010。Visual Studio 2010 先前代号 dev10,包含 Microsoft 最新的开发平台创新和扩展。
在该平台上的新增功能有
1、数组初始值设定项。
2、集合初始值设定项。
3、内联 Lambda 表达式。
5、泛化。
6、No-PIA 部署。
7、与 Python 的集成。
8、并行计算扩展。
VB的特点
@H_404_235@1.面向对象
VB采用了
面向对象设计
思想,它基本思路是把复杂的设计问题分解为多个能够完成独立功能且相对简单的对象集合。所谓“对象”就是个可操作实体如窗体、窗体中命令按钮、标签、文本框等,面向对象编程就是指程序员可根据界面设计要求直接在界面上设计出窗口、菜单、按钮等类型对象并为每个对象设置属性。
@H_404_235@2.事件驱动
在Windows环境下是以事件驱动方式运行每个对象的都能响应多个区别事件,每个事件都能驱动段代码事件过程,该代码决定了对象功能。通常称这种机制为事件驱动的编程机制。可由用户操作触发也可以由系统或应用触发例如单击个命令按钮就触发了按钮Click(单击)事件该事件中代码就会被执行,若用户未进行任何操作(未触发事件)则就处于等待状态整个应用就是由彼此独立事件过程构成。
@H_404_235@3.软件Software集成式开发
@H_404_235@4.结构化设计语言
VB具有丰富数据类型是种符合结构化设计思想语言而且简单易学此外作为种设计语言VB还有
许多独到的处。
@H_404_235@5.强大数据库访问功能
VB利用数据Control控件可以访问多种数据库VB 6.O提供ADOControl控件不但可以用最少代
码实现数据库操作和控制也可以取代DataControl控件和RDOControl控件。
@H_404_235@6.支持对象链接和嵌入技术
发集声音、图像、动画、字处理、Web等对象于一体的功能强大的软件。
@H_404_235@7.网络功能
VB 6.0提供了DltTML(Dynamic}tTML)设计工具利用这种技术可以动态创建和编辑Web页面使
@H_404_235@8.多个应用向导
地创建区别类型、区别功能应用。
@H_404_235@9.支持动态交换、动态链接技术.
@H_404_235@lO.联机帮助功能
价键理论(VB法)
valence-bond theory
一种获得分子薛定谔方程近似解的处理方法。又称电子配对法。历史上最早发展起来的化学键理论。主要描述分子中的共价键和共价结合,其核心思想是电子配对形成定域化学键。
1927年W.H.海特勒和F.W.伦敦首次完成了氢分子中电子对键的量子力学近似处理,这是近代价键理论的基础。L.C.鲍林等加以发展,引入杂化轨道概念,综合成价键理论,成功地应用于双原子分子和多原子分子的结构。
价键理论是海特勒伦敦处理氢分子方法的推广,要点如下:①若两原子轨道互相重叠,两个轨道上各有一个电子,且电子自旋方向相反,则电子配对给出单重态,形成一个电子对键。②两个电子相互配对后,不能再与第三个电子配对,这就是共价键的饱和性。③遵循最大重叠原则,共价键沿着原子轨道重叠最大的方向成键。共价键具有方向性。原子轨道通常在某个特定方向上有最大值,只有在此方向上轨道间才有最大重叠而形成共价键。不同原子轨道有不同成键能力。原子轨道的最大值作为原子轨道成键能力的度量,鲍林给出s、p、d、f等原子轨道成键能力依次为1、3、5、7。在主量子数相同时,成键能力大的轨道形成的共价键较牢固。
价键理论与化学家所熟悉的经典电子对键概念相吻合,一出现就得到迅速发展。但价键理论计算比较复杂,使得后来发展缓慢。随着计算技术日益提高,该理论还会有新发展。