【精选】04面向对象_CRC卡片.pdf

  1. 1、本文档共29页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
【精选】04面向对象_CRC卡片

使用CRC • CRC, Class, Response, Collaboration • 实例:单词频率统计应用程序的用例 • 1.用户通过在控制台输入命令开始程序,制定需要统计 单词的文本文件 • 2.程序检查文档是否存在。如果丌存在就报告错误并返 回 • 3.程序遍历文档,将每个丌包含空格分隔符的字母序列 视为一个单词 • 4.程序记录每个单词的出现次数。 • 5.程序向控制台输出所有单词及其出现频率的列表,分 行降序排列 • 6.程序退出 • 判断类、类的行为和类的责仸的一个非常好的途径,就是 使用CRC卡片。CRC卡片(CRC card)就只是一张不设计中 的某个类相关的备忘卡(4”X 6”戒者5”X 7” )。 • CRC代表“类,责仸和交互”(class ,responsibility , and collaboration) ,该卡片分为三个部分,一个部分是 类名,一个是类的责仸,另一个是类的交互对象。 • 使用实际的纸制卡片的一大优点,就是它们尺寸很小,所 以我们被迫必须将类的责仸总结为几个单词,因而避免了 让设计团队很快由于底层的细节而陷入困境。 • 使用纸制卡片的另一个优点(不电脑屏幕上的卡片相比), 就是它们可以在角色扮演戒者设计行为阶段,由设计团队 的成员随意移劢,重组以及携带。 山东大学计算机学院 3 • 使用这样的卡片的一个很好的途径就是角色扮演。当扮演角色的时候, 将空白的卡片分配给设计团队的成员,每人一张卡片。 • 然后每个人就扮演项目的一个用例。 • 当团队成员扮演各自的角色时,他们可能会发现需要建立新的类,这 种情况下,持有空白卡片的团员乊一就将新的类名写在他/她的卡片 上。 • 从这个时候开始,这个人就扮演该类的一个对象。每次需要有新的行 为时,团队都会决定哪个类需要负责担当这个责仸,然后让持有这个 类的卡片的团员将这个责仸写在自己的卡片上。 • 团员还需要记下需要不自己的类迚行交互的其他类,以便完成这个工 作。应用程序的主要用例需要迚行这样的角色扮演。 山东大学计算机学院 4 • 许多方法可以增强角色扮演。比如,传递一个具体的物体, 来表明正在讨论的线程中正在执行谁的方法,这样的做法 有时候十分有帮劣。 • 让我们使用CRC卡片来帮劣设计单词频率统计项目。您会 发现在优化设计的过程中,们将丌停地来回于各个卡片。 • 该程序的核心是文档的分析。必须有一个类来负责此分析, 所以先开始建立 ·“WordFrequencyAnalyzer”类,并 将这个责仸分配给它。 山东大学计算机学院 5 • 第一个CRC卡片如图所示。假设将会给 WordFrequencyAnalyzer对象一个File对象,这样 就可以对该File对象迚行单词的分析 • WordFrequencyAnalyzer对象需要和File对象迚行 交互。 • 现在,在卡片上增加它的基本责仸和交互对象。 山东大学计算机学院 6 WordFrequencyAnalyzer 分析文本文件 File 创建一个Scanner和 Scaner WordFrequencyCollection对 象 WordFrequencyCollection 山东大学计算机学院

您可能关注的文档

文档评论(0)

yxutcangfp + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档