📄 +
字号:
摘要 本文以VisualBasic5.0为例,详细地阐述了新一代可视化编程的特点,并具体就部件化编程、面向对象功能、数据访问、网络支持等几个方面进行了深入论述。
关键词 可视化,VB5.0,面向对象,ActiveX
软件编程的沿革
纵观计算机编程的历史,从汇编语言开始,FORTRAN、BASIC、Pascal、C以至于面向对象的SmallTalk、C++、Java,人们无一不在为解决编程的复杂性,提高软件的生产率而做出巨大的努力。
最早的编程是真正的专家编程,直接使用机器码并通过穿孔纸带输入计算机,这一时期编程的繁琐和困难是今天我们无法想象的。向着便于编程的方向发展,科学家们发明了汇编语言,这是对机器码的符号化表示,虽然仍依赖于机器指令,但已经大大改善了编程的直观性。同期还出现了子程序的概念,子程序有助于功能的重用,也有助于程序体系结构的理解和实现。在50年代末,出现了第一门高级语言FORTRAN,自此拉开了结构化编程的序幕。和随后的Pascal、C语言一样,FORTRAN完全脱离了硬件,以抽象的接近英语的程序语句编写应用程序,而毋需了解计算机内部的构造和机器指令,这大大提高了软件生产率,同时也提供了编写更加复杂软件的技术能力,是软件编程史上的一次革命。70年代初,发明了C语言。C语言与用其编写的操作系统UNIX一道取得了巨大的成功,直到现在还统治着计算机编程语言领域。C语言语法精练,自由度高,很能体现创造性,深得熟练程序员的厚爱,同时C语言适合系统软件开发,运行效率高(仅次于汇编语言),可移植性好,所以很快就成为标准的开发语言。在C语言统治的年代,结构化编程的思想和方法流行于世界。所谓结构化,就是将软件划分为一个个强内聚,松耦合的功能模块,每个模块是一个包含许多过 程和函数的程序文件。对于多个软件项目而言,功能模块可能具有一定的重用性。结构化分析的思想仍然是今天软件工程理论的主体。但结构化分析和设计以及结构化编程,是现实系统到软件实现的一个间接变换,不自然,不清晰,对于大型复杂系统,这种变换的复杂性呈几何级数增长。以C语言为例,能够胜任的软件规模为2至4万行代码,对于更大规模的软件系统,如10万行以上,若采用结构化分析和C语言编写,所付出的代价将难以估量。那么,什么样的方法才能实现现实系统到软件实现的直接、自然、代价小的变换呢?这就是现在风靡于世界的面向对象分析、设计以及面向对象编程的方法。面向对象的方法是人们头脑中认识世界的本原方法,它简单、自然、直接。面向对象的方法论在60年代就出现了,到70年代中期近于成熟,其代表是Simula和SmallTalk语言,但由于当时对面向对象方法的需求并不迫切,再加上运行效率低等因素,这两种语言及面向对象方法没有流行开来。到了80年代,软件系统的复杂性与日俱增,迫切需要一种支持面向对象编程、运行效率高、能继承和有效使用以前软件代码资源的新语言。C++在这种环境下应运而生。使用C++进行面向对象的开发,要将软件系统看成由一个个对象组成,每个对象都具有属性并能 提供服务,用代码实现每个对象,并且实现对象间通讯和相互作用。用C++进行面向对象编程能够做到很好的软件重用,其重用的基础是所编写的类库,类库中的类可在不同的项目中得到重用。但是重用类仍然不是很方便的,它有几个局限性:首先重用C++类库,要了解类的继承体系,在不少情况下还需要了解类库的源代码,否则难于继续编程;其次,重用只是源码级重用,而不是可执行级的重用,重用的类哪怕是做了极细微的修改,整个应用都需要重新编译;第三,类的重用完全依赖于编程语言环境,C++编写的类,只能在C++中使用,这就限制了其他语言的程序员重用该类的代码,降低了重用的广度。
90年代,人们找到了彻底实现软件重用的方法,即软部件。软部件又称为软组件、软插件,在概念上与硬件的部件、元件是等同的。软部件是一个独立的执行体,多个应用程序可以共享一个软部件,应用程序所使用的编程语言可以互不相同,只要遵守部件模型的协议和调用规范,就可以用C、C++、VB、ObjectPascal、甚至新近出现的Java语言编写使用软部件的应用。由于软部件与应用是相互独立的,可以单独修改并升级软部件,只要仍保持与前一版软部件的接口兼容,使用该软部件的应用无须作任何改写和编译,仍能正常运行并自动获得部件升级的好处。软部件模型(SoftwareComponentModel)是描述可重用软部件和这些部件之间如何相互作用的规范。目前存在两种部件模型,第一种是Microsoft公司的基于Windows平台的COM/DCOM; 第二种是以IBM、Apple公司为首的联盟提出的SOM,其技术标准为TheOpenGroup组织提出的标准化CORBA,它可实现跨平台的对象访问。现主要在UNIX和OS/2上实现。与OLE类似的OpenDoc技术就是建于SOM模型之上的。
使用部件对象模型的软件开发者,可以组合现有的部件以实现重用。这种方法不仅节省时间和资金,提高工作效率,更重要的是可以产生更加统一、可靠的应用程序。目前,存在两种相互竞争的部件技术———ActiveX和JavaBeans。在可用性方面,ActiveX已在竞争中领先,包括Microsoft在内的各软件厂商提供的ActiveX控件已达数万个,而Jav
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -