- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第10章 面向对象设计XX大学 XX系 XXX软件工程教程电子科技大学出版社
学习目标l 掌握面向对象设计的过程和准则;l 掌握面向对象设计方法和步骤;l 掌握系统设计概念和步骤;l 掌握对象设计概念和步骤。
目向对象设计概述面向对象设计过程与准则面向对象设计启发规则系统设计0506对象设计本章小结
面向对象设计概述01
面向对象设计概述◆ 面向对象设计(Object-Oriented Design,OOD)强调定义软件对象,并且使这些软件对象互相协作来满足用户需求。◆ 面向对象设计是一种软件设计方法,是一种工程化规范。面向对象设计模式解决的是类与相互通信的对象之间的组织关系,包括它们的角色、职责、协作方式几个方面。◆ 面向对象设计模式的最终实现仍然要使用面向对象编程语言来表达,如JAVA、C++/C#等。
面向对象设计过程与准则02
面向对象设计的特点(1)模块化在面向对象的设计中,一个模块通常为一个类或对象,它们封装了事物的属性或操作”(2)抽象类是对一组具有相似特征的对象的抽(3)信息隐藏。在面向对象方法中,信息隐藏是通过对象的封装性来实现的。
面向对象设计的特点(4)低耦合(弱耦合)在面向对象的设计中,耦合主要指不同模块之间相互关联的程度。低耦合有利于降低由于一个模块的改变而对其他模块造成的影响。(5)高内聚(强内聚)”内聚是衡量一个模块内各个元素彼此结合的紧密程度。在设计时应该力求做到高内聚,提高模块的内聚性有利于提高系统的独立性。(6)重用性尽量使用已有的类,如果确实需要创建新类时,应考虑将来被重复使用的可能。
面向对象设计的步骤(1)系统设计① 将子系统分配到处理器。② 选择实现数据管理、界面支持和任务管理”的设计策略。③ 为系统设计合适的控制机制。④ 复审并考虑权衡(折衷)。
面向对象设计的步骤(2)对象设计① 在过程级别(procedural lavel)设计每个操作,即设计每个操作的实现细节。② 定义内部类。③ 为类属性设计内部数据结构。④ 消息设计。”⑤ 使用对象间的协作和对象—关系模型,设计消息模型。(3)复审复审设计模型并在需要时迭代。
面向对象设计启发规则03
面向对象设计启发规则(1)设计结果应该清晰易懂1)用词一致。2)使用已有的协议。3)减少消息模式的数目。4)避免模糊的定义。
面向对象设计启发规则(2)类等级的深度应适当虽然类的继承与派生有许多优点,但是不能随意创建派生类,应该使类等级中包含的层次数适当。一个中等规模的系统,类等级层次数应该保持为7±2。
面向对象设计启发规则(3)设计简单的类简单的类便于开发和管理。因此,在类的设计过程中应注意:类要有明确的定义;类中避免包含过多的属性;一个类不要提供太多服务;尽量简化对象之间的合作关系。
面向对象设计启发规则(4)使用简单的协议减少消息的参数个数是减少类间耦合程度的有效手段。一般来说,消息的参数不要超过3个。(5)使用简单的服务减少控制服务中源程序语句的行数及语句的嵌套层数,可以简化服务。
面向对象设计启发规则(6)把设计变动减至最小虽然设计的变动是正常情况,但设计的变动会造成资源或时间上的消耗,所以开发人员应该尽量把设计的变动概率降至最低,一般来说,设计的质量越高,设计结果保持不变的时间也越长。
系统设计04
系统设计◆ 面向对象的设计可以划分为系统设计和对象设计两个阶段。◆ 系统设计关注于确定实现系统的策略和目标系统的高层结构。◆ 一般来说,常用的系统设计的步骤为:将系统分解为子系统—设计问题域子系统—设计人机交互子系统—设计任务管理子系统—设计数据管理子系统。
系统设计的步骤(1)将分析模型划分成子系统在OO系统设计中,我们把分析模型中紧密相关的类、关系等设计元素包装成子系统。
系统设计的步骤子系统的设计通常具有如下四个准则。① 子系统应具有定义良好的接口,通过接口和系统的其它部分通信;② 除了少数的“通信类” 外,子系统中的类应只和该子系统中的其它类协作;③ 子系统的数量不宜太多;④ 可以在子系统内部再次划分,以降低复杂性。
系统设计的步骤(2)标识问题本身的并发性,并为子系统分配处理器通过对对象行为模型的分析,可发现系统的并发性。(3)任务管理设计① 确定任务的类型;② 必要时,定义协调者任务和关联的对象;③ 将协调者任务和其它任务集成。
系统设计的步骤(4)数据管理设计数据管理的设计包括设计系统中各种数据对象的存储方式(如内部数据结构、文件、数据库),以及设计相应的服务,即为要储存的对象增加所需的属性和操作。
系统设计的步骤(5)资源管理设计OO系统可利用一系列不同的资源(如磁盘驱动器、处理器、通信线路等外部实体或数据库、对象等抽象资源),很多情况下,子系统同时竞争这些资源,因此要设计一套控制机制和安全机制,
您可能关注的文档
- 《软件工程》课件——第6章 软件编码和测试.pptx
- 《软件工程》课件——第7章 软件维护.pptx
- 《软件工程》课件——第8章 面向对象技术与UML.pptx
- 《软件工程》课件——第9章 面向对象分析.pptx
- 《软件工程》课件——第11章 面向对象编码与测试.pptx
- 《软件工程》课件——第12章 软件项目管理.pptx
- 《软件工程》课件——第13章 软件工程标准与文档.pptx
- 《软件工程》课件——第14章 项目实例.pptx
- 《数控加工与编程技术》课件——编程基础.pptx
- 2026年毛概期末考试试题库附参考答案(研优卷).docx
- 2025年鸡西市麻山区公益性岗位招聘8人(公共基础知识)测试题附答案.docx
- 杭州之江湾股权投资基金管理有限公司招聘参考题库附答案.docx
- 2026江苏辖区农村商业银行常熟农商银行校园招聘200人(公共基础知识)测试题附答案.docx
- 2025年中国石油新疆油田分公司秋季高校毕业生招聘360人(公共基础知识)综合能力测试题附答案.docx
- 2023年攀枝花市直属机关遴选公务员笔试真题汇编附答案解析(夺冠).docx
- 2026广发银行太原分行校园招聘(公共基础知识)测试题附答案.docx
- 2025四川成都医学院招聘事业编制辅导员10人(公共基础知识)测试题附答案.docx
- 2026年毛概期末考试试题库必考题.docx
- 2025年合肥市某国有企业2025年岗位外包招聘(公共基础知识)测试题附答案.docx
- 2026年重庆青年职业技术学院单招(计算机)测试模拟题库附答案.docx
原创力文档


文档评论(0)