第07讲_类与类图精要.pptVIP

  1. 1、本文档共73页,可阅读全部内容。
  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文档。上传文档
查看更多
第07讲_类与类图精要

筛选候选类 “账目”是记录每次销售明细及总额的,应该成为一个候选类; “存货清单”是指库存情况,每次销售后都要更新库存,所以也该成为一个候选类; “收据”是顾客购买凭证,可以退货,所以也该成为一个候选类; 隐含的候选类:“销售单列表” 获得的候选类 实体类 商品、账目、存货清单、收据、销售单、销售单列表等 其他 外部 顾客、出纳员 关联分析,建模 多对多 细 化 细化后的类图 识别类之间的关系 类 关联 类 Cashier 输入 Merchandise SaleForm 包含 SaleFomrLine SaleFormLine 显示 Merchandise SaleForm 由…支付 Invoice Invoice 计入 AccountBook Invoice 计算 TaxInfoemation Merchandise 更新 StockList Payment 被特化为 cash Payment 被特化为 Creditcard 类图 对象( Object)定义 对象是类的实例 是完全描述它的类的直接实例和那个类的祖先的间接实例(如果允许多重分类,则对象可能是多个类的直接实例) 对象( Object)定义 对象对于它的类的每个属性有一个数据值 每个属性值必须与属性的数据类型相匹配 如果属性有可选的或多重的多重性,那么属性可以有零个或多个值 对象( Object)表示 除对象名下面加下划线外,表示方法与类图相同 对象图-Object Diagram 它用来表示类图中类的对象在系统运行过程中某一时刻的状态 它是软件系统中逻辑视图的组成部分。在建模中对象图往往用协作图代劳 对象图包括对象及其链 对象图-Object Diagram 关联的实例称为链(link) 类有实例,因而两个类之间显示的关联也有实例。 可以在类之间找到关联,而在对象之间找到链。 链表示两个对象之间有意义的连接。 如果两个对象a 和b 之间存在链,那么可以在它们之间传递消息 对象图示例 小结 类 设计类 类的关系 对象与对象图 实验08 主要用例的 设计类(属性和方法) 设计类图(类之间的关系) 谢谢 类描述了一组对象的公共的结构和行为。 类为对象规定了它们的结构和所能提供的服务(操作) 果属性或操作具有下划线,表明它是静态的 。 静态Static:静态对象保存在内存中,直到程序终止,不会保存在外部持续存储器中,相当于C++中的全局对象。 目标系统中选定的每个类都要有一定的职责。每个类的职责将通过属性和行为体现,其中属性标识了类的静态特征,即类需要记录的信息;行为标识了类应该具有的操作能力。明确每个类职责的过程就是寻找类的属性和方法的过程,属性可以从问题的陈述中抽取,或通过对类性质的理解加以辨认;行为可以从对系统的处理叙述中获得,即可以将动词标识的动作作为候选行为。 例如,命令处理程序就是一个主动类的例子,它从外面接受命令对象,然后在自身的控制线程内执行命令 说明: 通过use case图可以确定需要的边界类。系统与系统外部环境通信,系统与用户,每个actor/use case交互至少要有一个边界类。但并非每个actor/use case对要生成唯一边界类,多个actor启动同一use case时,可以用同一个边界类与系统通信。例如:Form、对话框、菜单和接口\通信接口、打印机接口、传感器、终端及API等的抽象等 负责系统与系统的外部环境的通信,提供系统和用户、系统和其他系统的界面 常常代表窗口、表单、窗格、通信接口、打印机接口、传感器、终端及API等的抽象 每个边界类至少与一个执行者有关 类的信息和行为存在较长时间,是现实问题的抽象,通常叫域类,是现实世界的实体,或需要执行系统的内部事务。 通常独立于外部环境,多数时独立于应用。 多数情况下,直接由业务实体类导出 通常是系统需要用来完成某个责任的类,需要从事件流中的名词中发现 用来规范一个或多个类的行为。规范用例中实现系统行为的类的事件 在初期,可以认为每一个执行者/用例对都有一个控制类。控制类响应用例中的事件流 控制类代表与其他对象之间的协作、排序、事务处理以及对其他对象的控制,常常用于封装与特定用例有关的控制。 * 现在系统建模通常采用3层结构-三层客户机/服务器模型,对应的对象也分为3种类型。 应用接口层的对象称为边界对象,它位于系统与外部世界之间的边界上。 事务处理层用到的对象称为控制对象,它用来控制用例的流程。它们本身没有任何业务功能,但可以协调其他对象和控制总体逻辑流程。 数据存取层用到的对象称为实体对象,它用来保存信息,一般最终可以映射成数据库中的表和字段。 * CRC:Class-Responsibility-Collaboration 在使用“名词动词法”寻找类的时

文档评论(0)

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

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

1亿VIP精品文档

相关文档