正文描述:《【精品】浅析软件工程中面向对象的思想和方法》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、浅析软件工程中面向对象的思想和方法面向对象(ObjectOriented,00)是当前计算机界关心的重点,它是90年代软件开发方法的主流。面向对象的概念和应用已超越了程序设计和软件开发,扩展到很宽的范围。如数据库系统、交互式界面、应用结构、应用平台、分布式系统、网络管理结构、CAD技术、人工智能等领域。在20世纪60年代以前,软件开发者构造的软件系统大多都是较小的,且相对简单。编程语言及编程环境也和对简单,随着软件复杂性的增长,为了更好地维护代码,软件开发也需要方法来进行约束。传统的方法中,结构化方法和基于建模方法是典型的软件开发方法。结构化方法是结构化分析、结构化设计和
2、结构化编程的总称。结构化方法的思想萌发于20世纪60年代,是在70年代由TomDeMacro和EdYourdon等人被系统地进出来。其目的在于,提供-,个有序的机制,通过抽象来理解待开发的系统,试图产生结构良好的软件系统。但对于较复杂的系统而言,容易导致模块的低内聚和模块间的高耦合,从面使得系统缺乏灵活性和可维护性。基于建模方法在20世纪70年代末提出,即PeterChen的实体关系法与EdCodd的关系数据库理论相结合提岀的一种新的软件开发方法。其强调对信息实体建模,而不是对象建模。结构化方法和基于建模方法都没有较强地描述系统的动态行为的能力。随着计算机技术的飞速发展,
3、计算机管理系统应用的普及,企业信息化势在必行。传统开发方法结构化开发的软件存在很多问题,其有稳定性、可修改性和可重用性都比较差,生产效率低等缺陷,这是因为传统的软件开发是而向过程的。然而,用户需求的变化大部分是针对功能的,采用面向对象方法开发可以满足用户的需求,因为面向对象有以下优点:能够比较口然地反映现实事物,可重用性、可维护性和町扩展性比较强。第二章面向对象概述什么是面向对象呢?“面向对象”本身没有任何意义。“对象”大概是英语中最普通的一个单词。它在字典中的定义是这样的。对象:能感觉到或能够被感觉到的东西。换句话说,对象可以是任何东西!“面向”也没有任何特别的含义,它
4、的定义是“指向”。在这种定义下,“而向对象”被理解为形容词。因此,面向对象可以定义成这样,面向对象:指向你可以想到的任何东西。毫无疑问,软件工业无法为“面向对象”下一个统一的定义。这种模糊性使得任何一个软件零售商都声称他们的商品是“面向对象”的。2・1面向对象的基本概念尽管权威人士对面向对象的概念没有达成一致的意见,但从程序设计方法的角度来看,面向对象是一种新的程序设计范型。其基本思想是使用对象、类、封装、继承、关联、聚合、消息、多态性等基本概念来进行程序设计。2.1.1对象(Object)对象是人们要进行研究的任何事物,它可以是有形的(比如一辆汽车),也可以是无形的(比
5、如一项计划)。对象是构成世界的一个独立单位,它具有口己的静态特征和动态特征。对象是系统中用来描述客观事物的一个实体,它是构成系统的一个基本单位。一个对象由一组属性和对这组属性进行操作的一组服务构成。2.1.2类(Class)具有相同或相似性质的对象的抽象就是类。因此,对象的抽象是类,类的具体化就是对象,也可以说类的实例是对象。类的确定主要是确定该类的所有对象有哪些属性和哪些行为。这些属性和行为必须覆盖该类中的所有对象。例如在一个学生类中,它的属性有姓名、学号、性别、所在院系,它的行为有选课、注册等。抽象是指忽略事物的非本质特征,只注意那些与当前目标有拳本质特征,从而找出事
6、物的共性;而分类是把具有共同性质的事物划分为一类,得出一个抽象的概念。另外,每一个属性与行为都被封装后,只能在类的内部起作用。2.1.3封装(Encapsulation)为了实现信息的隐蔽,乂提出了封装,就是把对象的属性和行为结合成一个独立的单位,并尽可能隐蔽对象的内部细节。2.1.4继承(Inheritance)任何一个子类都具有其父类所有的属性、方法、事件。这一特性叫做类的继承。如果父类的特性发生变化,其子类也相应改变。面向对象的编程技术强调了代码的重用性,而可重用性即是能过继承来实现的。简化了人们对事物的认识和描述,也简化了系统的构造强度及其文档,非常有益于软件复用
7、。2.1.5关联类之间的静态联系称为关联。关联表示了类与类之间的关系,在实现这种关系时,可以通过对象的属性表达出来。例如“,学生”与“课程”类之间存在着关联“选课”,用类“学生”的对象的属性来记录该对象具体选课的课程对象(由“课程”类创建)。2.1.6聚合是关联的一种,只是关联的语义没有聚合那么明显。聚合是具有整体一部分关系语义的关联。2.1.7消息(Message)在面向对象方法中,把向对象发出的操作请求称为消息。对象之间通过消息进行通信,实现了对象之间的动态联系。2.1.8多态性面向对象设计借鉴了客观世界的多态性,体现在不
显示全部收起
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。