- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* 上海大学计算机学院 * 维护 可维护性:维护人员理解、改正、改动或改进这个软件的难易程度。 提高可维护性是支配软件工程方法学所有步骤的关键目标。 决定软件可维护性的因素 1)可理解性 2)可测试性 3)可修改性 4)可移植性 5)可重用性 * 上海大学计算机学院 * 面向对象方法学引论 面向对象方法学的4个要点 客观世界是由各种对象(Object)组成。面向对象的软件系统是由对象组成的。 对象组成对象类(Class)。类是具有相同属性和行为的对象的集合。每个对象类定义了一组数据和一组方法。 按照子类(派生类)与父类(基类)的关系,对象类组成一个层次结构的系统(类等级)。子类继承(inheritance)父类的数据和方法。 对象彼此之间仅能通过传递消息(Message)互相联系。 OO=objects+classes+inheritance+communication with messages 面向对象 = 对象 + 类 + 继承 + 消息通信 * 上海大学计算机学院 * 面向对象方法学引论 总存在用错误的数据调用正确的模块, 或用正确的数据调用错误的模块的危险。 与人类习惯的思维方法一致,解空间与问题空间一致 以对象为核心,数据以及数据上的操作封装为一个统一体--对象 软件系统由对象组成,以对象间的消息模拟实体间的联系。 抽象思维,归纳思维,演绎思维 开发围绕建立问题领域的对象模型,是一个逐步深化的渐进过程 解空间与问题空间不一致 以算法为核心,数据和过程分离。 软件系统由模块组成,模块间通过调用来集成系统。 自顶向下按部就班。 较差 基于功能分解,需求变化大多针对功能 功能变化引起软件结构的整体修改 较好 功能需求变化仅需要作一些局部性的修改 可派生子类以实现功能扩充或修改 较差 标准函数库不是自含的和独立的 模块重用,则相应的数据也必须重用。 较好 通过对象实例或派生类 方便修改和扩充,且不影响原有类的使用 较易 可分解成相互独立的小产品 较难 分而不解 较好 稳定性好,易修改,易理解。 较差 稳定性较差,较难修改,较难理解。 思维方法 特性 面向对象方法 传统方法 稳定性 开发大型软件 可维护性 可重用性 * 上海大学计算机学院 * 面向对象方法学引论 面向对象的一些概念 对象:封装了数据结构及可以施加在这些数据结构上的操作(服务或方法)的封装体。 类:具有相同数据和相同操作的一组相似对象的集合 消息:要求某个对象执行在定义它的那个类中所定义的某个操作的规格说明。 方法:对象所能执行的操作,也就是类中所定义的服务。(如C++的成员函数) 属性:类中所定义的数据(如C++的数据成员) 封装:表示对象状态的数据和实现操作的代码与局部数据,都被封装在黑盒子里面,不能从外面直接访问或修改这些数据和代码。 继承:是子类自动地共享基类中定义的数据和方法的机制。 多态性:同一方法,不同的子类有不同的实现。 函数重载:是指在同一作用域内的若干个参数特征不同的函数可以使用相同的函数名字。 * 上海大学计算机学院 * 面向对象分析 面向对象分析基本顺序 寻找类--对象; 识别结构; 识别主题; 定义属性; 建立动态模型; 建立功能模型; 定义服务。 * 上海大学计算机学院 * 面向对象方法学 面向对象建模 三种模型 对象模型:它是对模拟客观世界实体的对象以及对象彼此间的关系的映射,描述系统的数据结构。 动态模型:描述系统的控制结构。 功能模型:描述系统的功能 三种模型之间的关系:参看P.228/9.7 建模图形工具UML(统一建模语言) 类图:类图描述类及类与类之间的静态关系(关联、聚集、泛化等)。 类的状态图:通过描绘对象的状态及引起对象状态转换的事件,来表示对象的行为。 用例图:描述的是外部行为者所理解的系统功能。系统、行为者、用例及用例之间的关系。 事件跟踪图(顺序图) * 上海大学计算机学院 * 面向对象设计 面向对象设计的任务 系统设计: 确定实现系统的策略和目标系统的高层结构; 对象设计: 确定解空间中的类、关联、接口形式及实现服务的算法。 * 上海大学计算机学院 * 面向对象设计 面向对象设计的准则 模块化、抽象、信息隐藏 耦合 (1) 交互耦合 对象之间的耦合通过消息连接来实现,则这种耦合就是交互耦合。应该尽量减少消息中包含的参数个数,降低参数的复杂程度。减少对象发送(或接收)的消息数。 (2) 继承耦合 继承是一般化类与特殊类之间耦合的一种形式。设计应该使特殊类尽量多继承并使用其一般化类的属性和服务。 内聚 (1) 服务内聚 一个服务应该完成一个且仅完成一个功能。 (2) 类内聚 类的属性和服务应该全都是完成该类对象的任务所必需的,其中不包含无用的属性或服务。 (3) 一般-特殊内聚 一般
您可能关注的文档
- 江苏省扬州市江都区第二中学2014-2015学年八年级上学期12月月考物理范文.doc
- 江苏省扬州市江都区花荡中学2015-2016年度八年级物理第一学期12月月考(有)范文.doc
- 江苏省扬州市江都区十校2015届九年级12月联谊月考物理范文.doc
- 2013-2-电路方法和电路定理总汇.ppt
- 江苏省扬州市江都市宜陵中学2015届九年级(上)第一次月考物理(版)范文.doc
- 7下第三章力知识点梳理解释.ppt
- 7下科学第2章2.4-2.5知识点回顾解释.ppt
- 7现代数学(二)20世纪数学概观解释.ppt
- 3.4通电导线在磁场中受到的力--市优质课说课范例.ppt
- 2013-2-电路总汇.ppt
文档评论(0)