- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
《现代软件工程》;结构化程序的详细设计与实现-1
面向对象和构件的系统详细设计与实现-2
系统设计与实现规范及管理-3
;第二章面向对象和构件的系统详细设计与实现
面向对象的系统详细设计任务和原则-2.1
面向对象软件的实现-2.2
基于构件的系统详细设计方法-2.3
面向对象和构件的系统详细设计与实现-2.4;2.1面向对象的系统详细设计任务和原则;数据设计(对象设计):
结构化方法:
从分析阶段得到的数据模型和数据字典出发,设计出相应的数据结构
面向对象方法:
数据作为类的一个属性,设计合适的数据结构来表示这个属性
体系结构(子系统)设计:
定义系统的主要结构元素及相互的关系
结构化方法:
从数据流图出发对数据流图进行分析,得出软件的层次化的模块结构图
面向对象方法:
从分析模型划分子系统,在考虑通信、并发、部署、复用等问题的基础上,建立系统层次结构;接口(消息)设计:
描述系统内部、系统与系统之间以及系统与用户之间如何通信,接口包括了信息交互和特定的行为,因此,数据流和控制是接口设计的基础
面向对象方法:接口设计主要是消息设计
过程设计(方法设计):
将软件体系结构的结构元素变化为对软件构件的过程性描述
结构化方法:
从分析阶段获得的过程规格说明、控制规格说明和状态图出发,得到系统各个功能的过程化描述
面向对象方法:
从系统功能模型和行为模型出发,得到各个类的方法以及实现细节的描述
;在OOA的详细设计阶段,我们追求:
可复用性
在详细设计阶段的可复用性是代码级的可复用
代码级的可复用,体现在:
本项目内部的代码复用:内部复用
新老项目之间的代码复用:外部复用
可扩展性
可扩展是软件质量的重要指标,面向对象的继承和多态性,使系统具有很好的可扩展可能
健壮性
健壮性是指在错误的输入或对象状态时,仍保持方法不会出错的能力,当然,健壮是相对的,是与系统开销相平衡的
协作性
系统开发支持更好的项目协作;复用方法:
内部复用的方法:找出设计中的相同或相似部分,应用继承机制复用
外部复用的方法:经过长期的积累,以体系结??为核心,获得复用可能
设计原则:
方法的内聚:类的一种方法只能完成一种功能,如有不相关的方法,应进行分解
减少代码的规模:代码过长,应进行分解
保持对外接口的一致性:相同或相似的方法,应保持名称、参数、返回值和条件的基本一致
分离策略和实现:把判断、选择和具体实现分离,前者检查状态、做出选择。它依赖具体的应用逻辑,后者针对数据进行确定的操作,不做出选择,甚至出错只报告,也不做出处理
方法覆盖所有操作数据:对同一个数据的相同操作,应在统一的方法内实现
加强封装性:只操作对象内部的数据,避免操作全局数据
减少方法的偶合性:
多利用继承机制:继承是实现共享和提高复用的主要方法;设计原则:
封装数据:类的内部数据必须是隐蔽的,其他类只有通过方法,才能访问该数据
封装方法内部的数据结构:内部结构只为方法实现所用,外部不可直接使用
避免情况分支语句:情况分支语句可用来测试对象内部的属性,但不能用来根据对象类型选择相应的行为。因为如果这样,在增加新类时,将不得不修改原有的代码
区分公有和私有方法:
公有方法是对象的对外接口,其他对象只能使用公有方法访问该对象。公有方法通常不能草率地被修改和删除,否则会导致整个系统的全面修改
私有方法是对象内部的方法,通常用来辅助实现公有方法,对外是不可见的,因此,相对修改和变化的灵活性可以大一些
区分公有和私有方法的目的,是保证建立一个系统内部和外部的合适边界;健壮性:
友好地对待用户的输入错误,采用提示和辅导操作
把握代码优化时机
选择合适的实现方法
检查参数的合法性
协作性:
在程序设计开始之前,进行周密的考虑
尽量使代码易于理解
在对象模型中使用相同的名称
把类打包成模块
对类进行详细的文档化
公开公共的设计说明;2.2面向对象软件的详细设计;类间关系;消息(messaging);Dictionary类设计的例子
一个Dictionary是包含一些可按关键码的值排序和检索对象的部件。
对于要存储在Dictionary内的一个实例来说,
类必须提
供一个操
作来取得
关键码。;关系refersto表示了“一个类引用另一个类”,后者的实例可当作参数由前者在消息中使用。
由消息构成的流图形成了面向对象系统结构的核心。;例如,Dictionary类有一个操作add,该操作将把一个属于Item类的对象item当作参数,把这个对象加入到Dictionary中。具体地,add操作首先发送一个消息给做为参数的对象item,再利用它的关键码,到该对象所在的Item类中引用(refersto)相应的实例,把它加入到词典中去。
在设计阶段,在这样两个类之间消息关系的建立要求协调这些
您可能关注的文档
最近下载
- 水闸横剖面图识读水利工程图识读与绘制.pptx VIP
- 国家建筑标准设计图集20S515 钢筋混凝土及砖砌排水检查井.pdf VIP
- 救援技术毕业论文题目(647个).doc VIP
- l临床医生三基考试试题及答案.doc VIP
- 苏教版高一生物必修一知识点总结.doc VIP
- 12J7-3-内装修吊顶标准规范(OCR).pdf VIP
- 全国翻译专业资格(水平)考试--CATTI精品课件.ppt VIP
- 《深化国有企业改革》课件.ppt VIP
- 基于AI技术的增强型汽车动力电池预测方法及系统.pdf VIP
- (2025秋新版)部编版三年级道德与法治上册《第10课《公共场所的文明素养》 教学设计.docx VIP
有哪些信誉好的足球投注网站
文档评论(0)