浅谈面向对象设计方法发展史及现状

来源 :俪人·教师版 | 被引量 : 0次 | 上传用户:crosswind123
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  【摘要】面向对象方法已深入到计算机软件领域的几乎所有分支。它不仅是一些具体的软件开发技术与策略,而且是一整套关于如何看待软件系统与现实世界的关系,用什么观点来研究问题并进行问题求解,以及如何进行软件系统构造的软件方法学。本文就面向对象方法产生的背景以及发展现状进行了简要叙述。
  【关键词】面向对象 程序设计 发展史 UML
  1 面向对象特征概述
  面向对象设计是一种把面向对象的思想应用于软件开发过程中,指导开发活动的系统方法,是建立在“对象”概念基础上的方法学。对象是由数据和操作组成的封装体,与客观实体有直接对应关系,一个对象类定义了具有相似性质的一组对象。面向对象程序设计具有抽象性、封装性、继承性和多态性等特征。
  抽象:指从事物中舍弃个别的、非本质的特征,而抽取共同的、本质特征的思维方式。
  封装:将数据和代码捆绑到一起,避免了外界的干扰和不确定性。对象的某些数据和代码可以是私有的,不能被外界访问,以此实现对数据和代码不同级别的访问权限。
  继承:让某个类型的对象获得另一个类型的对象的特征。通过继承可以实现代码的重用:从已存在的类派生出的一个新类将自动具有原来那个类的特性,同时,它还可以拥有自己的新特性。
  多态:指一般类和特殊类可以有相同格式的属性或操作,但这些属性或操作具有不同的含义,即具有不同的数据类型或表现出不同的行为。
  2 面向对象设计方法发展历史
  在这里把面向对象方法的发展分为三个阶段:雏形阶段、完善阶段和繁荣阶段。
  (一)雏形阶段
  1967年挪威计算中心的Kisten Nygaard和Ole Johan Dahl开发了Simula67语言,首先引入了类的概念和继承机制,它是面向对象的先驱。1972年Palo Alno研究中心(PARC)发布了Smalltalk-72,其中正式使用了“面向对象”这个术语。Smalltakl的问世标志着面向对象程序设计方法的正式形成。
  可以说出现了面向对象语言之后,面向对象思想才得到了迅速的发展。过去的几十年中,程序设计语言对抽象机制的支持程度不断提高:从机器语言到汇编语言,到高级语言,直到面向对象语言。汇编语言出现后,程序员就避免了直接使用0-1,而是利用符号来表示机器指令,从而更方便地编写程序;当程序规模继续增长的时候,出现了Fortran、C、Pascal等高级语言,这些高级语言使得编写复杂的程序变得容易,程序员们可以更好地对付日益增加的复杂性。
  (二)完善阶段
  PARC先后发布了Smalltalk-72、76和78等版本,直至1981年推出该语言完善的版本Smalltalk-80。Smalltalk-80的问世被认为是面向对象语言发展史上最重要的里程碑。迄今绝大部分面向对象的基本概念及其支持机制在Smalltalk-80中都已具备。它是第一个完善的、能够实际应用的面向对象语言。但是随后的Smalltalk-80的应用尚不够广泛,其原因是:
  追求纯OO的宗旨使得许多软件开发人员感到不便。
  一种新的软件开发方法被广泛地接受需要一定的时间。
  针对该语言的商品化软件开发工作到1987年才开始进行。
  (三)繁荣阶段
  从20世纪80年代中期到90年代,是面向對象语言走向繁荣的阶段。其主要表现是大批比较实用的面向对象编程语言的涌现,例如C++、Objective-C、Object Pascal、CLOS、Eiffel和Actor等。这些面向对象的编程语言分为纯OO型语言和混合型OO语言。混合型语言是在传统的过程式语言基础上增加了OO语言成分形成的,在实用性方面具有更大的优势。此时的纯OO型语言也比较重视实用性。现在,在面向对象编程方面,普遍采用语言、类库和可视化编程环境相结合的方式,如Visual C++、JBuilder和Delphi等。面向对象方法也从编程发展到设计、分析,进而发展到整个软件生命周期。
  到20世纪90年代,面向对象的分析与设计方法已多达数十种,这些方法都各有所长。目前,统一建模语言已经成为世界性的建模语言,适用于多种开发方法。把UML作为面向对象的建模语言,不但在软件产业界获得了普遍支持,在学术界影响也很大。在面向对象的过程指导方面,目前还没有国际规范发布。当前较为流行的用于面向对象软件开发的过程指导有“统一软件开发过程”(RUP)和国内的青鸟面向对象软件开发过程指导等。
  3 面向对象设计方法应用现状
  当前,面向对象方法几乎覆盖了计算机软件领域的所有分支。例如,已经出现了面向对象的编程语言、面向对象的分析、面向对象的设计、面向对象的测试、面向对象的维护、面向对象的图形用户界面、面向对象的数据库、面向对象的数据结构、面向对象的智能程序设计、面向对象的软件开发环境和面向对象的体系结构等。此外,许多新领域都以面向对象理论为基础或作为 主要技术,如面向对象的软件体系结构、领域工程、智能代理、基于构件的软件工程和面向服务的软件开发等。
  4 结语
  计算机软件技术的发展日新月异,在很短的时间内即涌现出了大量的软件开发工具并迅速地更新换代,给编程人员进行程序设计带来了极大的方便。在不久的将来相信面向对象程序设计技术必将应用到更多的程序中。
  【参考文献】
  [1] 麻志毅,著.面向对象分析与设计.机械工业出版社,2013,2.
  [2] 格雷厄姆(Ian Graham,I.)著,袁兆山,译. 面向对象方法:原理与实践.机械工业出版社,2003,3.
其他文献
【摘要】课外阅读也是语文学习的重点,但是对于课外阅读,常常会被许多教师与学生忽略,而对于农村的语文教学就更是如此,仅注重“万变不离其宗”的课本,忽视了课外阅读学习的重要性。  【关键词】小学 语文 阅读 分析 策略  1对农村小学语文课外阅读学习的现状分析  1.1教师与家长不重视。  良好的课外阅读氛围在农村难以形成。在家中,大部分家长不识字,许多家长也很少关心孩子的学习情况,把身心都投入的农活
【摘 要】国家发展的希望在教育,教育发展的希望在教师。作为一名教师,我深感身上责任重大。而作为一名班主任,承载着家长、学校、和学生的殷切期待,更需时时处处规范自己的言行,用爱心、包容心去感化学生,做好学生的表率。  【关键词】关爱 等待 欣赏 包容  从登上讲台的第一天起,我就下定决心要成为一名深受学生信任和爱戴的老师。相信每一位老师都有这种朴素的愿望。我们希望我们的工作能得到学生的肯定,同时也希
苏联卫国战争时期的群众歌曲和交响乐(下)黄晓和第七交响曲是在战争爆发的最初几个月就动笔写作的.1941年8月已完成了前三个乐章,而东乐章是在转移到古比雪夫市后于1942年2月27日完成的.事隔6天就首次公演了.交响曲宏伟的构思要求规模庞大的乐队编制:...
有这样一道题目:积极参与身边的政治生活,是山东省实验中学高二某班同学开展研究性学习活动的重要内容。前不久,他们对济南市十几家网吧开展社会调查时发现,在这些网吧中,上网者大都是大中学校的学生。他们利用网络学习的不多,而玩网络游戏、沉溺于聊天甚至利用BBS等论坛传播不良信息的却很多。对此现象形成的原因,实验学子对不同对象随机进行了采访,并归纳如下:  学生:学习枯燥无味,压力太大,我们在网络上无拘无束
【摘 要】物理课堂中的演示实验是教师为学生提供感性认识材料的,它无法代替学生自身的学习活动,教学中如果把教师的演示实验改为学生的边学边实验,既能使学生对实验获得更加清晰的印象,学到物理知识,又能培养学生的实验能力,提高学生的学习兴趣和主动性,通过学生充分的动脑、动手、动口,调动学生的多种感观,促进学生实现立体学习。  【关键词】实验 能力 方法  近几年,通过自己在教学中的努力实践和不断借鉴,使低
【摘 要】在英语的语言学习过程中,对于多义动作动词的研究一直以来都是人们关注的热点。英语动作动词有表示“动作或事件的正在进行状态”,除了该意义之外,英语动作动词还具有其他方面的特殊用法或涵义。鉴于此,对于英语多义动作动词的习得就对英语学习者多方面能力提出了要求。对英语多义动作动词习得,通过借助原型效应,为多义动作动词塑造一个原型范畴,这是该动词习得的基本方式。而多义动作动词可以通过隐喻化方式进行习