十二章节面向对象系统设计.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《十二章节面向对象系统设计.ppt》由会员分享,可在线阅读,更多相关《十二章节面向对象系统设计.ppt(43页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、十二章节面向对象系统设计 Still waters run deep.流静水深流静水深,人静心深人静心深 Where there is life,there is hope。有生命必有希望。有生命必有希望第十二章第十二章第十二章第十二章 面向对象系统设计面向对象系统设计面向对象系统设计面向对象系统设计在在软软件件开开发发人人员员完完成成了了面面向向对对象象的的分分析析之之后后,面面向向对对象象详详细细设设计计和和开开发发阶阶段段就就可可以以开开始始,我我们们面面对对的的问问题题是是如如何何针针对对系系统统的的具具体体实实现现进进行行面面向向对象的设计。对象的设计。第十二章第十二章第十二章第十二
2、章 面向对象系统设计面向对象系统设计面向对象系统设计面向对象系统设计面面向向对对象象的的软软件件构构建建过过程程见见图图12.1,注注意意此此时时我我们们应应建建立立了了经经过过分分析析设设计计得得到到的的定定义义得得很很好好的的类类。编编程程语语言言应应是是面面向向对对象象的的,如如C+、Java、Delphi等等。等等。一一组组语语句句就就形形成成了了一一个个服服务务(方方法法)。服服务务与与特特定定类类相相关关,每每个个服服务务代代表表一一个个所所需需的的操操作作方方法法,使使得得类类能能完完成成系系统统中中的的职职责责。服服务务类类似似于于系系统统中中的的模模块块。类类组组合合形形成成
3、子子系系统统或或系系统统软软件件,再再与与其其他他4个部件组合形成软件系统。个部件组合形成软件系统。从软件系统的角度面向对象系统设计的有四项主要工作:l人机交互部分的设计:用户界面的实现;l问题域部分的设计:从对象到类,建立新类库,最终到整个应用的构架;l任务管理部分的设计:系统管理:包括对象、行为、交互的细节,支持总体客户体验的技术的各个方面:用户帮助的内容、开拓市场的资料的内容、服务和支持的细节;l数据管理部分的设计:数据库的建立、维护与使用。第十二章第十二章第十二章第十二章 面向对象系统设计面向对象系统设计面向对象系统设计面向对象系统设计第十二章第十二章第十二章第十二章 面向对象系统设计
4、面向对象系统设计面向对象系统设计面向对象系统设计12.1从面向对象分析到面向对象设计从面向对象分析到面向对象设计面向对象设计四项主要工作采用面向对象方法最根本还是解决软件复杂性问题采用面向对象方法最根本还是解决软件复杂性问题,从分析、设计、编程是一个渐进的模型扩充过程,从分析、设计、编程是一个渐进的模型扩充过程,使软件工程的抽象层次不断提高,从对象到类,建立使软件工程的抽象层次不断提高,从对象到类,建立新类库最终到整个应用的构架,为程序的构件化和重新类库最终到整个应用的构架,为程序的构件化和重用奠定了基础。用奠定了基础。问题域设计人机交互设计任务管理设计数据管理设计第十二章第十二章第十二章第十
5、二章 面向对象系统设计面向对象系统设计面向对象系统设计面向对象系统设计从面向对象分析到面向对象设计从面向对象分析到面向对象设计面向对象分析是针对问题域和系统责任的,对应着分析工作面向对象分析是针对问题域和系统责任的,对应着分析工作五个活动,存在着面向对象分析的各层模型化的五个活动,存在着面向对象分析的各层模型化的“问题空间问题空间”。最终呈现越来越多的细节,层次是总体模型的一些水平薄片。最终呈现越来越多的细节,层次是总体模型的一些水平薄片。第十二章第十二章第十二章第十二章 面向对象系统设计面向对象系统设计面向对象系统设计面向对象系统设计第十二章第十二章第十二章第十二章 面向对象系统设计面向对象
6、系统设计面向对象系统设计面向对象系统设计五五个个层层次次对对应应着着在在面面向向对对象象分分析析中中介介绍绍过过的的五五个个主主要要活活动:动:发现类及对象;发现类及对象;识别结构;识别结构;识别主题;识别主题;定义属性;定义属性;定义服务。定义服务。这些活动,不必按顺序进行。这些活动指导人们从高的这些活动,不必按顺序进行。这些活动指导人们从高的抽象层抽象层(如问题域的类及对象)到越来越低的抽象层(结构、(如问题域的类及对象)到越来越低的抽象层(结构、属性和服务)。属性和服务)。这五个活动的安排表现了最普遍的总体方法。这五个活动的安排表现了最普遍的总体方法。从面向对象分析到面向对象设计从面向对
7、象分析到面向对象设计第十二章第十二章第十二章第十二章 面向对象系统设计面向对象系统设计面向对象系统设计面向对象系统设计面向对象设计针对与实现有关的因素继续开展面向对面向对象设计针对与实现有关的因素继续开展面向对象分析的五个活动,包括问题域、人机交互、任务管理和象分析的五个活动,包括问题域、人机交互、任务管理和数据管理等四个部分的设计。如图所示,面向对象设计模数据管理等四个部分的设计。如图所示,面向对象设计模型从横向看是上述四个部分,从纵向看每个部分仍然是五型从横向看是上述四个部分,从纵向看每个部分仍然是五个层次。个层次。第十二章第十二章第十二章第十二章 面向对象系统设计面向对象系统设计面向对象
8、系统设计面向对象系统设计1.为什么需要问题域部分设计为什么需要问题域部分设计首首先先,让让我我们们先先来来分分析析一一下下在在描描述述系系统统时时的的遇遇到到的的变变动动因因素和稳定因素,这是面向对象分析方法的策略基础。素和稳定因素,这是面向对象分析方法的策略基础。12.2问题域部分设计问题域部分设计(PDC:主体部件设计):主体部件设计)但但是是,系系统统中中最最稳稳定定的的方方面面,就就是问题空间被当作整体看待的对象,是问题空间被当作整体看待的对象,要要使使系系统统从从容容地地适适应应变变化化的的需需求求,保保持持总总体体结结构构的的稳稳定定性性就就显显得得格格外外重重要要,重重用用的的关
9、关键键可可扩扩充充性性所所需需要要的。的。系统需求系统需求最容易变动的就是加最容易变动的就是加工与子加工,就是服务;工与子加工,就是服务;其其次次,与与外外界界的的接接口口也是容易变动;也是容易变动;第第三三,描描述述问问题题空空间间中中的的实实体体所所用用的的数数据据属属性性有时也在发生变化有时也在发生变化.第十二章第十二章第十二章第十二章 面向对象系统设计面向对象系统设计面向对象系统设计面向对象系统设计2如何进行问题域部分设计如何进行问题域部分设计首先:对需求说明修改,使它们反映到问题模型中,首先:对需求说明修改,使它们反映到问题模型中,其次,针对特定的实现环境,对分析结果加以增补。其次,
10、针对特定的实现环境,对分析结果加以增补。12.2问题域部分(问题域部分(PDC)设计)设计把问题域专用类组合在一起;通过增添一般类而建立协议;复审并挑剔对面向对象分析结果增补调整继承的支持级别;提供数据管理部分;不要仅为反映队伍分工而作修改增加低层细节;改进性能;要考虑以下因素:重用设计和编程类;第十二章第十二章第十二章第十二章 面向对象系统设计面向对象系统设计面向对象系统设计面向对象系统设计11.2问题域部分(问题域部分(PDC)设计)设计首先考虑的因素:重用设计和编程类;首首先先考考虑虑如如何何从从自自己己的的或或别别人人的的源源程程序序中中把把现现成成的的类类增增加加到到问问题题域域部部
11、分分。现现成成的的类类可可能能是是用用面面向向对对象象方方法法编编写写的的,也也可可能能是是用用某某种种非非面面向向对对象象方方法法编编写写的的可可用用软软件,件,在在后后一一种种情情况况下下,把把软软件件封封装装在在一一个个特特意意设设计计的的、基基于于服服务务的的界界面面中中,改改造造成成类类的的形形式式,把把现现成成的的类类增增加加到到问问题题域域部部分中。分中。其其次次,划划掉掉现现成成类类中中任任何何不不用用的的属属性性和和服服务务;并并增增加加一一个个现现成成类类到到问问题题域域类类之之间间的的一一般般特特殊殊关关系。系。接接着着,划划掉掉问问题题域域类类中中不不再再需需要要的的部
12、部分分,这这些些属属性性和和服服务务现现在在是是从从现现成成类类中中继继承承的的了了,并并修修正正问问题题域域类类的的结结构构和和连连接接,必必要要时时把把它们移向现成类。它们移向现成类。第十二章第十二章第十二章第十二章 面向对象系统设计面向对象系统设计面向对象系统设计面向对象系统设计12.2问题域部分(问题域部分(PDC)设计)设计其次考虑的因素在在面面向向对对象象设设计计中中,通通常常先先引引入入一一个个类类以以便便把把问问题题域域专专用用的的类类组组合合在在一一起起,它它仅仅仅仅起起到到“根根”类类的的作作用用,把把全全部部下下层层的的类类组组合在一起。合在一起。一一般般特特殊殊结结构构
13、如图所示的例子中的“面向对象分析Root”就是这样的一个“根”类当没有一种更满意的组合机制可用时,这实际上就是一种把类库中的某些类组织在一起的方法。而且这样的类可以用于建立一个协议把问题域专用类组合在一起;第十二章第十二章第十二章第十二章 面向对象系统设计面向对象系统设计面向对象系统设计面向对象系统设计12.2问题域部分(问题域部分(PDC)设计)设计面向对象分析面向对象分析Root面向对象分析面向对象分析Subject面向对象分析面向对象分析Attribute面向对象分析面向对象分析Class面向对象分析面向对象分析Connection面向对象分析面向对象分析Service面向对象分析面向对
14、象分析GenSpecConnection面向对象分析面向对象分析InstanceConnection面向对象分析面向对象分析MessageConnection面向对象分析面向对象分析PartConnection把问题域专用类组合在一起;其次考虑的因素第十二章第十二章第十二章第十二章 面向对象系统设计面向对象系统设计面向对象系统设计面向对象系统设计12.2问题域部分(问题域部分(PDC)设计)设计通过增添一般类而建立协议;第三考虑因素:有有时时,一一些些专专用用类类将将需需要要一一个个相相似似的的协协议议,这这意意味味着着它它们们将将要要定定义义一一个个相相似似的的服服务务(以以及及相相应应的的
15、属属性性)集集合合。在在这这种种情情况况下下,可可引引进进一一个个附附加加类,以便建立这种协议。类,以便建立这种协议。在在上上面面例例子子中中的的“面面向向对对象象分分析析Part”就就是是这这样样的的一一个个类类,它它为为所所有有的的特特殊殊类类定定义义了了一一个个共共同同遵守的协议。遵守的协议。第十二章第十二章第十二章第十二章 面向对象系统设计面向对象系统设计面向对象系统设计面向对象系统设计12.2问题域部分(问题域部分(PDC)设计)设计第四考虑因素:有有时时如如果果面面向向对对象象分分析析的的一一般般特特殊殊结结构构包包括括多多继继承承,在在使使用用一一种种只只有有单单继继承承或或无无
16、继继承承性性的的编编程程语语言言时时,就就需需要要对对面面向向对对象象分分析析的的结结果果作作一一些些修修改。改。(1)多继承模式)多继承模式(2)针对单继承语言的调整)针对单继承语言的调整调整继承的支持级别;第十二章第十二章第十二章第十二章 面向对象系统设计面向对象系统设计面向对象系统设计面向对象系统设计12.2问题域部分(问题域部分(PDC)设计)设计1多多继继承承模模式式调整继承的支持级别;第四考虑因素:第十二章第十二章第十二章第十二章 面向对象系统设计面向对象系统设计面向对象系统设计面向对象系统设计12.2问题域部分(问题域部分(PDC)设计)设计2针针对对单单继继承承语语言言的的调调
17、整整调整继承的支持级别;第四考虑因素:第十二章第十二章第十二章第十二章 面向对象系统设计面向对象系统设计面向对象系统设计面向对象系统设计12.2问题域部分(问题域部分(PDC)设计)设计性性能能是是一一个个系系统统成成功功的的关关键键因因素素。性性能能的的含含义义远远不不只只是是一一个个系系统统或或应应用用程程序序执执行行得得多多快快,上上乘乘的的软软件件能能把把该该做做的的事事情情做做得得“足足够够快快”(符符合合需需求求或或客客户户期期望),而且费用和进度又符合要求。望),而且费用和进度又符合要求。下面有几种可望改进性能的措施:下面有几种可望改进性能的措施:第五考虑因素:改进性能;在对象之
18、间具有高度繁忙消息流通的情况下,在对象之间具有高度繁忙消息流通的情况下,把两个或更多的类加以合并可实现高度耦合;把两个或更多的类加以合并可实现高度耦合;在类及对象中扩充一些保存临时结果的属性。在类及对象中扩充一些保存临时结果的属性。第十二章第十二章第十二章第十二章 面向对象系统设计面向对象系统设计面向对象系统设计面向对象系统设计12.2问题域部分(问题域部分(PDC)设计)设计第六考虑因素:提供数据管理部分;为为了了提提供供数数据据管管理理部部分分,每每个个被被保保存存的的对象需要知道自己是怎样被存储的。对象需要知道自己是怎样被存储的。(1)第一种方法是)第一种方法是“每个对象自己保存自己每个
19、对象自己保存自己”;通知一个对;通知一个对象保存自己;每个对象知道如何保存自己;增加一个属性和象保存自己;每个对象知道如何保存自己;增加一个属性和一个服务来完成此事。一个服务来完成此事。(2)第二种方法是,每个对象把自己传送给数据管理部分,让)第二种方法是,每个对象把自己传送给数据管理部分,让数据管理部分来存储对象自己,通知一个对象保存自己;在这种数据管理部分来存储对象自己,通知一个对象保存自己;在这种方法中,可以把任何方法中,可以把任何个提供同一组服务的存储系统插入数据管个提供同一组服务的存储系统插入数据管理部分,而不需对问题域部分做额外的修改;增加属性和服务以理部分,而不需对问题域部分做额
20、外的修改;增加属性和服务以完成此事。完成此事。第十二章第十二章第十二章第十二章 面向对象系统设计面向对象系统设计面向对象系统设计面向对象系统设计12.2问题域部分(问题域部分(PDC)设计)设计第七考虑因素:第七考虑因素:增加低层细节增加低层细节;为为了了设设计计和和编编程程的的方方便便,可可以以在在低低层层成成分分中中分离出一些独立的类,分离出一些独立的类,这这种种方方法法有有助助于于把把与与机机器器细细节节有有关关的的东东西西放在低层类中隔离起来。放在低层类中隔离起来。第十二章第十二章第十二章第十二章 面向对象系统设计面向对象系统设计面向对象系统设计面向对象系统设计12.2问题域部分(问题
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 十二 章节 面向 对象 系统 设计
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内