问题域部分的设计
18页1、第六章 问题域部分的设计一、 什么是面向对象设计1、 OOA与OOD的关系: 1 )面向对象的设计就是在OOA的基础上运用面向对象方法,主要解决与现实有滚得问题,目标是产生一个符合现实条件的OOD模型。与现实条件有关的因素有:图形用户系统、硬件、操作系统、网络、数据管理系统和编辑语言等。 2 )由于OOD以OOA模型为基础且OOA与OOD采用一致的表示方法,这使得从OOA到OOD不存在转换,只需做必要的修改和调整,或补充某些细节,并增加几个与现实关联的相独立部分即可。因此OOA与OOD之间不存在分析与设计的鸿沟,二者能紧密衔接,大大降低了从OOA与OOD的难度、工作量和出错频率。 3 )OOA主要针对问题域,识别有关的对象以及它们之间的关系,产生一个映射问题域,满足用户需求,独立于实现的OOA模型。OOD主要解决与实现有关的问题,基于OOA模型,针对具体的软、硬件条件(如机器、网络、OS、GUI、DBMS等)产生一个可实现的OOD模型。2、OOD模型和过程 在OOA阶段只考虑问题域和系统操作责任,在OOD阶段要考虑与具体实现的问题。图6-1 OOD模型从一个侧面观察 OOD模型包括五个
2、主要部分一个核心部分加四个外围部分 问题域部分、人机交换部分、控制驱动部分、数据管理部分、构建及部署部分从另一侧面观察 OOD模型每个部分仍采用OOA的概念和表示方法,只是在辅助模型中要增加分别于描述构件模型和部署的构件图和部署图。OOD过程: 设计OOD模型的五个部分 问题域部分的设计、人机交互部分的设计、控制流管理部分的设计、数据管理部分的设计、构件部署设计。前4项不强调次序,每个部分均采用与OOA一致的概念、表示法及活动,但具有自己独特的策略。进行构件部署设计要在其前面四个部分完成后进行。二、 问题域部分的设计 对OOA结果按实现条件进行补充与调整就是问题域部分。进行问题域部分设计,要继续运用OOA的方法,包括概念、表示法及一部分策略。不但 要根据实现条件进行OOD设计,而且由于需求变化或新发现了错误,也要对OOA的结果进行修改。本章的重点是对OOA结果进行补充与调整,要强调的是这部分工作主要不是细化,但OOA未完成的细节定义要在OOD完成。 1、为复用类而增加结构2、提高性能3、增加一般类以建立共同协议4、按编程语言调整继承5、转化复杂关联决定关系的实现方式6、调整与完善属性7
3、、构造及优化算法8、决定对象间的可访问性9、定义对象实例10、其他如下针对一些主要的情况讲述如何进行问题域的设计 1、为复用类而增加结构如果在 OOA识别和定义的类是本次开发中新定义的,而且没有可复用的资源,则需要进一步设计和编程。如果已存在一些可复用的类,而且这些类既有分析、设计时的定义,又有源程序,那么,复用这些类即可提高开发效率与质量。 可复用的类可能只是与OOA模型中的类相似,而不是完全相同对二者进行修改。1) 如果完全相同,就把可复用的类直接加到问题域,并用复用标记所复用的类。2) 如果大于,就把可复用的类直接加到问题域,并用复用标记所复用的类,所需要的累再继承它。3) 如果大于,就把可复用的类直接加到问题域,删除可复用类中的多余信息,并用复用标记所复用的类。4) 如果相似,按如下方法处理; 把要复用的类加到问题域,标以 “复用”。 划掉(或标出)不用的属性与服务。 建立从复用类到问题域原有的类之间的泛化关系。 由于问题域的类继承了“复用”类的特征,所以有些属性和服务不需要了应 该把它们划掉。 考虑修改问题域原有类的结构和连接,必要时移到“复用”类。图6-2问题域中例题2、提
4、高性能1) 调整对象的分布 把需要频繁交换信息的对象,尽量地放在一台处理机上。 2)增加保存中间结果的属性或类 避免以后重复计算。 3)提高或降低系统的并发度,可能要人为地增加或减少主动对象。 4)合并通讯频繁的类5)用聚合关系描述复杂类 如果一个所描述事物过于复杂,其操作也可能比较复杂,因为其中间可能要包多项工作内容。对这种情况的处理,可考虑用聚合关系描述复杂类。6) 细化对象的分类 如果一个类的概念范畴过于大,那么它所描述的对象的实际情况可能就有若干差异。解决的一个方法就是把类划分的更细一些,在原先较为一般的类之下定义一些针对不同具体情况的类。在每个特殊类中分别定义适合各自对象的操作。3、增加一般类以建立共同协议 1)增加一个类,将所有具有相同操作和属性的类组织在一起,提供通用的协议。 2)增加一般的类,提供局部通用的协议。 3)对相似操作的处理。 通过对特征标记做小的修改,以使他们相同,然后再把他们提升到一般类中。4 、按编程语言调整继承 由于在OOA强调如实地反映问题域,OOD考虑实现问题,所用语言不支持多继承,甚至不支持继承。 1)对多继承的调整 方法一:采用聚合把多继承转换
《问题域部分的设计》由会员桔****分享,可在线阅读,更多相关《问题域部分的设计》请在金锄头文库上搜索。
2023年乡镇全面提升执行力经验做法.doc
课堂评价常用语.docx
比较完整的雨季施工方案
幼儿园美术手工活动策划方案范本(二篇)
应急演练
人教版高中地理必修2《第四章工业地域形成与发展章节复习与测试》71.docx
东北大学22春《土木工程测量》补考试题库答案参考7
周年活动策划汇总八篇.doc
旅游公司工作总结(精选).doc
2023年学年小学数学教研组下学期的工作总结.doc
2023年医院感染管理科办公室工作汇报总结.doc
销售部门上半年工作总结
五年级上册数学试卷.doc
最新版超级详细集中采购作业流程.doc
xx小学初中高中民办学校幼儿园培训学校托管托幼机构安全事故依法处置制度.docx
计算机软硬件采购制度建设.doc
2023年内蒙古兴安盟阿尔山市五岔沟镇富康社区工作人员考试模拟题及答案
自主学习提高体育课堂教学效率档.doc
项目部合同管理制度样本.doc
2023年写有趣的事的作文.docx
2023-08-04 3页
2024-02-20 10页
2023-04-30 21页
2023-05-15 9页
2022-10-20 4页
2022-07-23 6页
2023-03-20 13页
2023-12-23 13页
2023-05-26 12页
2023-06-09 5页