- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
面向对象的软件开发方法综述
S史鸿声
面向对象是近十几年来迅速形成和发展起来的一种新的软件开发方法和理论。简单的说,它是一种按照人们对现实世界习惯的认识规律和思维方式来研究和模拟客观世界的方法学。它将现实世界中的任何事物均视为“对象”,把整个世界看成是由许多不同种类的对象构成,每一个对象都有自己的内部状态和运动规律,不同对象之间的相互联系和相互作用就构成了完整的客观世界。面向对象方法学所引入的对象,类,方法,消息,继承,封装等一系列重要概念和良好机制,为我们表达和反映客观世界,分析,设计和实现复杂系统,提供了先进的技术方法,并奠定了坚实的理论基础。它可使软件设计人员摆脱结构程序设计的框框,从应用的角度来思考问题,更好的理解用户的需求。实践证明,面向对象方法和技术可以开发出结构清晰,易于维护的软件系统。
传统的软件开发方法是把软件开发的过程划分为分析,设计编码,测试和维护等几个阶段,这种阶段划分多年来一直被广泛应用,但它存在有以下一些问题:
偏离实际,过于着重纸面的分析和设计
很难在规范的环境下学习开发
开发过程的错误很难发现或在最后才能查验
不能支持“原型”的概念
过于强调用户需求的完整和准确表达
不能支持软件复用的概念
开发周期长,在完成编码之前看不到任何可演示和运行的东西
面向对象方法使一种以对象为中心,与传统软件工程完全不同的方法,面向对象的程序设计对问题描述的抽象程度更高,从而更适合人的思维模式,它以数据为中心组织系统,把数据和操作有机地结合起来。面向对象的思想与方法已被用于许多不同的领域,如程序设计语言,软件开发方法学,形式化规范描述,操作系统,分布存储和并发计算,人工智能,实时系统,数据库甚至硬件设计等领域。从世界软件产品市场来看,有三类产品将会很快取代当前的各种产品,它们是面向对象的操作系统,面向对象的应用开发工具和面向对象的数据库。
面向对象方法的基本特征有:
数据抽象
用以定义对象的属性和操作对象的服务(即数据和操作),对对象中属性的访问必须通过服务来进行。数据抽象的主要方面是标志主题和对象。主题是提供模型的规模,对象是表示客观实体的属性和服务。数抽象还包括了父类和子类的概念,类结构为继承特征奠定了基础,有相同属性和服务的对象为同一类。
封装
封装体现了对象和使用者之间的关系,封装把对象的属性(数据)和操作(程序)隐蔽在一个单一的模块之中。
继承
继承使类所组成构件库的效率提高,为复用奠定了基础。在类结构中,子类可以继承父类的属性和服务。
通过消息进行通讯
在面向对象的环境中,对象之间组成网状结构,同时由于封装特性,对象间的通信是通过相互传递消息进行的,对象根据消息来进行操作。
面向对象方法支持一种“模板式”(Pattern)的开发方法。在面向对象环境中存在着丰富的模板(即对象和类)的构件库,在设计系统时,可针对实际问题在库中查找模板,然后把找到的模板拼装成系统。若没有与问题相符合的模板,则对相似的模板进行修改或重新的构造新模板,同时把它添加到库中去,这就是类结构的概念。它帮助我们描述问题空间的层次关系,把具有公共属性和操作的类放在高的层次,所有具有该属性和操作的新类在增加自身的特有属性和操作后即成为该结构的子类,子类下面又可以派生子类。。。。。。,其集合构成构件库。
复用是面向对象方法中最有效的特性之一。关于类结构的派生上面已经提到。面向对象的这种机制使得每个类共享其超类(Superclass)的数据结构和方法,超类是层次结构中在该类之上的类,通过类的派生和继承,构件库不断扩大。使得库中的所有模板实现了复用的特性。
面向对象程序设计
面向对象的程序设计方法是一种自底向上的开发方法,它从内部结构上模拟客观世界,属于“白箱法”,其开发过程是从“用什么做”到“要做什么”。它把程序看成为:
对象=(算法+数据结构) 程序=(对象+对象+……)
该方法以数据为核心,进行系统模块设计的基本出发点是软件的兼容性,易用性、复用性和易扩充性。它有别于传统的结构化程序技术中的“程序=算法+数据结构”的开发思想,从而解决了传统技术中软件难以复用的问题。
面向对象系统的软件开发
传统的结构化软件开发,通常有“流水型”、“螺旋型”和、“重复原型”三种模式。而面向对象技术可以用于任何开发模式。
一般地,面向对象系统的软件开发由下面四个阶段组成:
1、需求分析阶段
该阶段的主要任务就是通过对问题域的研究,产生一个外部可观察的行为规格说明书——一个完整、一致和可行的需求说明。这一阶段的关键是研究、理解和文档化问题,它应该包括以下的活动
您可能关注的文档
最近下载
- 网贷常见名词解释.doc VIP
- 金属基复合材料课件.ppt VIP
- 复合材料【课件】.ppt VIP
- 教科版四年级上册科学教案(全册).pdf VIP
- 复合材料【全套课件】.ppt VIP
- 4 自由落体运动(教学课件).pptx VIP
- 西门子西门子技术go-top.pdf VIP
- 22G101-3 混凝土结构施工图平面整体表示方法制图规则和构造详图-独立基础、条形基础、筏形基础、桩基础 .docx VIP
- 2025年甘肃省公路交通建设集团武仙公路收费运营人员招聘61人笔试模拟试题及答案解析.docx VIP
- 2025甘肃省公路交通建设集团武仙公路收费运营人员招聘61人笔试备考题库及答案解析.docx VIP
文档评论(0)