网站大量收购独家精品文档,联系QQ:2885784924

软件工程课件老师.pptx

  1. 1、本文档共49页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

大连理工大学软件学院软件工程

2025/4/4大连理工大学软件学院2传统的软件工程方法学:带给软件产业巨大进步部分缓解了软件危机中、小项目获得成功但是,应用到大型项目中,很少取得成功20世纪80年代,开始研究面向对象分析与设计,逐步形成了面向对象方法学。20世纪90年代,面向对象方法学已经成为人们在开发软件时的首选范型。第9章面向对象方法学引论

2025/4/4大连理工大学软件学院3第9章面向对象方法学引论9.1面向对象方法学概述9.2面向对象的概念9.3面向对象建模9.4对象模型9.5动态模型9.6功能模型9.7三种模型之间的关系9.8小结

2025/4/4大连理工大学软件学院49.1面向对象方法学概述9.1.1面向对象方法学的要点面向对象(Object-Oriented,缩写为OO)方法学的出发点和基本原则,是尽可能模拟人类习惯的思维方式,使开发软件的方法与过程尽可能接近人类认识世界解决问题的方法与过程。使描述问题的问题空间(也称为问题域)与实现解法的解空间(也称为求解域)在结构上尽可能一致。

2025/4/4大连理工大学软件学院59.1面向对象方法学概述客观世界中的实体既具有静态的属性又具有动态的行为。然而,传统语言提供的解空间对象实质上却仅是描述实体属性的数据,必须在程序中从外部对它施加操作,才能模拟它的行为。软件系统本质上是信息处理系统。数据和处理原本是密切相关的,把数据和处理人为地分离成两个独立的部分,会增加软件开发的难度。

2025/4/4大连理工大学软件学院6与传统方法相反,面向对象方法是一种以数据或信息为主线,把数据和处理相结合的方法。把对象作为由数据及可以施加在这些数据上的操作所构成的统一体。对象与传统的数据有本质区别,它不是被动地等待外界对它施加操作,相反,它是进行处理的主体。必须发消息请求对象主动地执行它的某些操作,处理它的私有数据,而不能从外界直接对其私有数据进行操作。9.1.1面向对象方法学的要点

2025/4/4大连理工大学软件学院7面向对象方法学所提供的“对象”概念,是让软件开发者自己定义或选取解空间对象,然后把软件系统作为一系列离散的解空间对象的集合。应该使这些解空间对象与问题空间对象尽可能一致。这些解空间对象彼此间通过发送消息而相互作用,从而得出问题的解。9.1.1面向对象方法学的要点

2025/4/4大连理工大学软件学院8也就是说,面向对象方法是一种新的思维方法,它不是把程序看作是工作在数据上一系列过程或函数的集合,而是把程序看作是相互协作而又彼此独立的对象的集合。每个对象就像一个微型程序,有自己的数据、操作、功能和目的。向着减少语义断层的方向迈了一大步,在许多系统中解空间对象都可以直接模拟问题空间的对象,解空间与问题空间的结构十分一致,因此,这样的程序易于理解和维护。9.1.1面向对象方法学的要点

2025/4/4大连理工大学软件学院9认为客观世界是由各种对象组成的,任何事物都是对象,复杂的对象可以由比较简单的对象以某种方式组合而成。按照这种观点,可以认为整个世界就是一个最复杂的对象。因此,面向对象的软件系统是由对象组成的,软件中的任何元素都是对象,复杂的软件对象由比较简单的对象组合而成。面向对象方法用对象分解取代了传统方法的功能分解。9.1.1面向对象方法学的要点概括地说,面向对象方法具有下述四个要点:

2025/4/4大连理工大学软件学院10把所有对象都划分成各种对象类(简称为类,Class),每个对象类都定义了一组数据和一组方法。数据用于表示对象的静态属性,是对象的状态信息。每当建立该对象类的一个新实例时,就按照类中对数据的定义为这个新对象生成一组专用的数据,以便描述该对象独特的属性值。如,荧光屏上不同位置显示的半径不同的几个圆,虽然都是Circle类的对象,但是,各自都有自己专用的数据,以便记录各自的圆心位置、半径等等。类中定义的方法是允许施加于该类对象上的操作,是该类所有对象共享的,并不需要为每个对象都复制操作的代码。9.1.1面向对象方法学的要点

2025/4/4大连理工大学软件学院11按照子类(或称为派生类)与父类(或称为基类)的关系,把若干个对象类组成一个层次结构的系统(也称为类等级)。在这种层次结构中,通常下层的派生类具有和上层的基类相同的特性(包括数据和方法),这种现象称为继承(Inheritance)。但是,如果在派生类中对某些特性又做了重新描述,则在派生类中的这些特性将以新描述为准,也就是说,低层的特性将屏蔽高层的同名特性。9.1.1面向对象方法学的要点

2025/4/4大连理工大学软件学院12一切局部于该对象的私有信息,都被封装在该对象类的定义中,就好像装在一个不透明的黑盒子中一样,在外界是看不见的

文档评论(0)

159****9610 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:6044052142000020

1亿VIP精品文档

相关文档