天天看点

《面向对象分析与设计》一1.5面向对象方法的发展史及现状简介

在这里把面向对象方法的发展分为三个阶段:雏形阶段、完善阶段和繁荣阶段。

(1) 雏形阶段

20世纪60年代挪威计算中心开发的simula 67,首先引入了类的概念和继承机制,它是面向对象语言的先驱。该语言的诞生是面向对象发展史上的第一个里程碑。随后20世纪70年代的clu、并发pascal、ada和modula2等语言对抽象数据类型理论的发展起到了重要作用,它们支持数据与操作的封装。犹他大学的博士生alan kay设计出了一个实验性的语言flex,该语言从simula 67中借鉴了许多概念,如类、对象和继承等。1972年palo alno研究中心(parc)发布了smalltalk72,其中正式使用了“面向对象”这个术语。smalltalk的问世标志着面向对象程序设计方法的正式形成,但是这个时期的smalltalk语言还不够完善。

(2)完善阶段

parc先后发布了smalltalk72、76和78等版本,直至1981年推出该语言完善的版本smalltalk80。smalltalk80的问世被认为是面向对象语言发展史上最重要的里程碑。迄今绝大部分面向对象的基本概念及其支持机制在smalltalk80中都已具备。它是第一个完善的、能够实际应用的面向对象语言。但是随后的smalltalk的应用尚不够广泛,其原因是:

1)追求纯oo的宗旨使得许多软件开发人员感到不便。

2)一种新的软件开发方法被广泛地接受需要一定的时间。

3)针对该语言的商品化软件开发工作到1987年才开始进行。

(3)繁荣阶段

从20世纪80年代中期到90年代,是面向对象语言走向繁荣的阶段。其主要表现是大批比较实用的面向对象编程语言的涌现,例如 c++、objectivec、object pascal、clos(common lisp object system)、eiffel和actor等。这些面向对象的编程语言分为纯oo型语言和混合型oo语言。混合型语言是在传统的过程式语言基础上增加了oo语言成分形成的,在实用性方面具有更大的优势。此时的纯oo型语言也比较重视实用性。现在,在面向对象编程方面,普遍采用语言、类库和可视化编程环境相结合的方式,如visual c++、jbuilder和delphi等。面向对象方法也从编程发展到设计、分析,进而发展到整个软件生命周期。

到20世纪90年代,面向对象的分析与设计方法已多达数十种,这些方法都各有所长。目前,统一建模语言(unified modeling language,uml)[9]已经成为世界性的建模语言,适用于多种开发方法。把uml作为面向对象的建模语言,不但在软件产业界获得了普遍支持,在学术界影响也很大。在面向对象的过程指导方面,目前还没有国际规范发布。当前较为流行的用于面向对象软件开发的过程指导有“统一软件开发过程” [6] (也有人称为rup)和国内的青鸟面向对象软件开发过程指导等。

当前,面向对象方法几乎覆盖了计算机软件领域的所有分支。例如,已经出现了面向对象的编程语言、面向对象的分析、面向对象的设计、面向对象的测试、面向对象的维护、面向对象的图形用户界面、面向对象的数据库、面向对象的数据结构、面向对象的智能程序设计、面向对象的软件开发环境和面向对象的体系结构等。此外,许多新领域都以面向对象理论为基础或作为主要技术,如面向对象的软件体系结构、领域工程、智能代理(agent)、基于构件的软件工程和面向服务的软件开发等。

继续阅读