复旦大学:《面向对象分析和设计》课程资料_UML和模式_Chapter 17 - GRASP基于职责设计对象

GRASP基于职责设计对象
GRASP:基于职责设计对象

目标 学习使用面向对象设计的5个 GRASP原则或模 式
目标 ◼ 学习使用面向对象设计的5个GRASP原则或模 式

UML与设计原则 最关键的软件开发工具是受过良好设计原则训 练的思维(而不是UML或其他任何技术)。 ■学习 GRAPS和基本GoF设计模式是本书的关 键目标
UML与设计原则 ◼ 最关键的软件开发工具是受过良好设计原则训 练的思维(而不是UML或其他任何技术)。 ◼ 学习GRAPS和基本GoF设计模式是本书的关 键目标

职责和职责驱动设计 考虑系统中各个对象的职责、角色和协作,以 此来驱动设计的过程,称为职责驱动的设计 职责: 类元( Classifier)的职责或义务。 职责的类型: 口行为dong) 口认知( knowing)
职责和职责驱动设计 ◼ 考虑系统中各个对象的职责、角色和协作,以 此来驱动设计的过程,称为职责驱动的设计。 ◼ 职责: 类元(Classifier)的职责或义务。 ◼ 职责的类型: ❑ 行为(doing) ❑ 认知(knowing)

职责和职责驱动设计 行为职责: 口自身执行的一些行为,如创建对象或计算 口初始化其他的对象 口控制和协调其他对象中的活动 认知职责 口对私有封装数据的认知 口对相关对象的认知 口对其能够导出或计算的事物的认知
职责和职责驱动设计 ◼ 行为职责: ❑ 自身执行的一些行为,如创建对象或计算 ❑ 初始化其他的对象 ❑ 控制和协调其他对象中的活动 ◼ 认知职责 ❑ 对私有封装数据的认知 ❑ 对相关对象的认知 ❑ 对其能够导出或计算的事物的认知

GRASP General Responsibility Assignment Software Patterns 使用职责进行OO设计的基本原则 帮助你理解基本对象设计,以一种系统的,合 理的,可以解释的方式来推导设计
GRASP ◼ General Responsibility Assignment Software Patterns ◼ 使用职责进行OO设计的基本原则 ◼ 帮助你理解基本对象设计,以一种系统的,合 理的,可以解释的方式来推导设计

职责、 GRASP和UM图之间的关系 ■交互图与分配职责密切 相关:绘制交互图的过 程就是职责分配的过程。 Sale makePayment(cash Tendered) createlcashTendered abstract, implies Sale objects have a responsibility to create Payments
职责、GRASP和UML图之间的关系 ◼ 交互图与分配职责密切 相关:绘制交互图的过 程就是职责分配的过程。 : Sale makePayment(cashTendered) : Payment create(cashTendered) abstract, implies Sale objects have a responsibility to create Payments

什么是模式( attern 在面向对象的设计中,模式是对问题和解决方案的已 命名描述 ■模式的关键元素: 口名称 a问题 a解决方案 对于特定的问题,可以应用许多原则(模式)为对象 分配职责 模式陈述的不是新的设计思想,而是将已有的,经过 验证的知识、惯用法和原则汇编起来
什么是模式(pattern) ◼ 在面向对象的设计中,模式是对问题和解决方案的已 命名描述。 ◼ 模式的关键元素: ❑ 名称 ❑ 问题 ❑ 解决方案 ◼ 对于特定的问题,可以应用许多原则(模式)为对象 分配职责 ◼ 模式陈述的不是新的设计思想,而是将已有的,经过 验证的知识、惯用法和原则汇编起来

用到的领域模型 Records-sale-of Described-by Product Product Specificatio description itemID Used-by Describ Sales Lineltem Store Item Stocks quantity address ame Contained Houses completed Register Started-b Manager date Captured-on Initiated-by 4 Records-sales-on Payment Customet Cashier amount
用到的领域模型

低耦合 问题: ¤怎样降低依赖性,减少变化带来的影响,提高复用 性。 解决方案: 口使得耦合尽可能低的方式分配职责
低耦合 ◼ 问题: ❑ 怎样降低依赖性,减少变化带来的影响,提高复用 性。 ◼ 解决方案: ❑ 使得耦合尽可能低的方式分配职责
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 复旦大学:《面向对象分析和设计》课程资料_UML和模式_Chapter 16 - UML类图.ppt
- 复旦大学:《面向对象分析和设计》课程资料_UML和模式_Chapter 15 - UML交互图.ppt
- 复旦大学:《面向对象分析和设计》课程资料_UML和模式_Chapter 14 - 迈向对象设计.ppt
- 复旦大学:《面向对象分析和设计》课程资料_UML和模式_Chapter 13 - 逻辑架构和UML包图.ppt
- 复旦大学:《面向对象分析和设计》课程资料_UML和模式_Chapter 11 - 操作契约.ppt
- 复旦大学:《面向对象分析和设计》课程资料_UML和模式_Chapter 10 - 系统顺序图.ppt
- 复旦大学:《面向对象分析和设计》课程资料_UML和模式_Chapter 9 - 领域模型.ppt
- 复旦大学:《面向对象分析和设计》课程资料_UML和模式_Chapter 8 - 细化阶段的迭代——基础.ppt
- 复旦大学:《面向对象分析和设计》课程资料_UML和模式_Chapter 7 - 其他需求.ppt
- 复旦大学:《面向对象分析和设计》课程资料_UML和模式_Chapter 6 - 用例.ppt
- 复旦大学:《面向对象分析和设计》课程资料_UML和模式_Chapter 4 Chapter 5 - 初始阶段的需求.ppt
- 复旦大学:《面向对象分析和设计》课程资料_UML和模式_Chapter 3 - 案例分析 THE NEXTGEN POS SYSTEM.ppt
- 复旦大学:《面向对象分析和设计》课程资料_UML和模式_OOP:Object-Oriented Programming.pptx
- 复旦大学:《面向对象分析和设计》课程资料_UML和模式_Chapter 2 - 迭代、进化和敏捷.ppt
- 复旦大学:《面向对象分析和设计》课程资料_UML和模式_Chapter 1 - 面向对象分析和设计.ppt
- 复旦大学:《面向对象分析和设计》课程资料_课程注册系统_9-11 UC Design、Subsystem Design、Class Design.pdf
- 复旦大学:《面向对象分析和设计》课程资料_课程注册系统_6-8 Identify Design Elements、RunTime Architecture、Describe Distribution.pdf
- 复旦大学:《面向对象分析和设计》课程资料_课程注册系统_1-5 最佳实践、需求、分析设计、架构分析、用例分析.pdf
- 复旦大学:《面向对象分析和设计》课程资料_Exception handling refactorings.pdf
- 复旦大学:《面向对象分析和设计》课程资料_Error Handling.pdf
- 复旦大学:《面向对象分析和设计》课程资料_UML和模式_Chapter 18 - 使用GRASP的对象设计示例.ppt
- 复旦大学:《面向对象分析和设计》课程资料_UML和模式_Chapter 19 Chapter 20 Chapter 22.ppt
- 复旦大学:《面向对象分析和设计》课程资料_UML和模式_Chapter 21 测试驱动的开发与重构.ppt
- 复旦大学:《面向对象分析和设计》课程资料_UML和模式_复习:OOAD部分.ppt
- 复旦大学:《面向对象分析和设计》课程资料_UML和模式_AOP Aspect Oriented Programming.pptx
- 复旦大学:《面向对象分析和设计》课程资料_UML和模式_Hibernate Persistence.ppt
- 复旦大学:《面向对象分析和设计》课程资料_UML和模式_Hibernate 演示场景.pptx
- 复旦大学:《电子商务》课程资源_教学大纲.pdf
- 复旦大学:《电子商务》课程资源_教学案例:The Business Model-Recent Developments and Future Research-JOM2011.pdf
- 复旦大学:《电子商务》课程资源_教学研究:Online Game Addiction among Adolescents_Motivation and Prevention Factors.pdf
- 复旦大学:《电子商务》课程资源_教学研究:Research On The Utility Of An Advanced ACA In Context-Aware Tour Planning System.pdf
- 复旦大学:《电子商务》课程PPT课件_第二次课 电子商务的商业模式与分类.ppt
- 复旦大学:《电子商务》课程PPT课件_第一次课 引言(胥正川).ppt
- 复旦大学:《电子商务》课程PPT课件_第三次课 电子商务过程及相关因素(电子商务创业).ppt
- 复旦大学:《电子商务》课程PPT课件_第四次课 电子商务商业计划书写作 Creating a Winning E-Business Second Edition.ppt
- 复旦大学:《电子商务》课程PPT课件_第七次课 B2C电子商务——网上零售.pptx
- 复旦大学:《电子商务》课程PPT课件_第九次课 B2B电子商务(B2B行业平台).ppt
- 复旦大学:《电子商务》课程PPT课件_第五次课 商业模式的概念与内涵(发现商业模式).ppt
- 复旦大学:《电子商务》课程PPT课件_第八次课 电子商务模式与应用课程主题案例分析与展示——电子商务团购.ppt
- 复旦大学:《电子商务》课程PPT课件_第六次课 电子商务运营与管理 Getting Your E-Business Off The Ground.ppt