网站大量收购独家精品文档,联系QQ:2885784924

Part2Chap04发现对象、定义对象类2014-03-11.pptVIP

Part2Chap04发现对象、定义对象类2014-03-11.ppt

  1. 1、本文档共28页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Part2Chap04发现对象、定义对象类2014-03-11

Part 2: OOA Chapter 4 发现对象、定义对象类;第4章 发现对象、定义对象类 4.1 对象和类 4.2 表示法 4.3 研究问题域和用户需求 4.4 发现对象 4.5 对象分类 4.6 建立类图的对象层;4.1 对象和类; (2)类 类是对一组具有相同属性和操作的一组对象的抽象描述,类为属于该类的全部对象提供了统一的抽象描述,其内部包括属性和操作两个主要部分。 一个类的所有对象具有相同的属性,是指所有对象的属性的个数、名称、数据类型都相同,各个对象的属性值则可以互不相同,并且随着程序的执行而变化。至于操作,对于一个类的所有对象都是一样的,即所有的对象共同使用它们的类定义中给出的操作。 ; (2)类 主动类是主动对象的类。 抽象类是不直接创建对象实例的类,用于定义特殊类所继承的共同特性。 由一个类生成的一个对象可以扮演不同的角色,当一个对象扮演一个具体角色时,它展现给世界一个外观,与对象交互的客户根据对象在某时所扮演的角色而期望一定的行为。 一个类的一个角色是在特定的语境下该类的对象所呈现的行为。 ; OOA和OOD模型中的一个类在不同的语境下呈现两种不同的语义: (1)一个类代表属于该类的全部独享实例所构成的群体。 (2)一个类代表属于该类的任意一个对象实例。;4.1 对象与类;4.1 对象与类;类 名;类名《主动》;用户需求就是用户对所开发的系统提出的各种要求和期望。 阅读 交流 调查 记录 整理;*;系统边界是指一个系统所包含的所有系统成本与系统以外各种事务之间的分界线。 参与者:人员、设备、外系统。 ;研究问题域,对问题域中的事物进行抽象,从而得到系统所需要的对象。 要进行抽象,必须确定一个目标,这个目标就是系统责任。;(1)要舍弃那些与系统责任无关的事物,只注意与系统责任有关的事物,把它们抽象为系统中的对象。 (2)还要考虑把事物抽象成什么对象,以及如何对这些对象进行分类。 (3)应该把握“先松后紧”原则。;4.4 发现对象;4.4 发现对象;3.考虑系统责任 “事事有人做” 4. 名词技术 从名词到对象或类通常有一对一的映射。运用名词、代词和名词短语识别对象和类(寻找“现实世界”的对象和类)。 ;1. 舍弃无用的对象 1) 通过属性判断: 是否通过属性记录了某些有用的信息? 2) 通过操作判断: 是否通过操作提供了某些有用的功能? 二者都不是——无用,“人人有事做”。 通常,对象应该具有多个属性和操作。也存在对象没有属性仅提供操作,或有属性无操作的情况。 ;*;3. 与实现条件有关的对象,推迟到OOD考虑 系统责任所要求的某些功能—例如系统安装、配置、信息备份、浏览——可能无法从问题域中找到相应的对象来提供这些功能,可在设计阶段考虑专门为它们增加一些对象,既把它们推迟到设计阶段考虑。 系统责任要求的某些功能可能与实现环境有关,也推迟到设计阶段考虑。例如:与图形用户界面(GUI)系统、数据管理系统、硬件和操作系统有关的对象。 4. 对职责过多的类进行分解; 主动对象是具有主动行为的对象,在设计阶段是拥有线程或进程并能够启动控制活动的对象。主动类是其实例为主动对象的类。 识别主动对象的策略: (1)考虑问题域 哪些对象需呈现主动行为?--按定义 (2)考虑系统执行情况 根据系统责任观察系统功能的构成层次,重点考虑完成最外层功能的对象是否应定义为主动对象。 (3)考虑系统边界 哪些对象与参与者交互?如果一个交互是由参与者发起的,第一个处理该交互的对象是主动对象。; 识别主动对象的策略: (4)进行操作执行路线的逆向追踪。 (5)在分析阶段不能完全确定主动对象。 ;先使用问题域知识从对象中识别出类,然后依据对象和类的定义,使用概括来寻找两个或多个共享相同特征的对象,概括这些共同的方面来形成类。 从对象到类的抽象过程,中间并没有一个明显的分界线,常常在无形中发生。;1. 类的属性或操作不适合该类的全部对象 例:“汽车”类的“乘客限量”属性,不适合于吊车、铲车。 问题:分类不够详细,采取措施:进一步划分特殊类。 2. 属性及操作相同的类 经过抽象,差别很大的事物可能只保留相同的特征, ——考虑能否合并为一个类,如计算机与吸尘器 3. 属性及操作相似的类 ——考虑能否提升出一个一般类,或形成整体部分结构。 例:轿车、货车,抽象出汽车;机床与鼓风机用电机做成分. 4. 同一事物的重复描述 例:“职员”和“工作证”

文档评论(0)

shaoye348 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档