面向对象分析以及创新设计讲座7GRas p模式.ppt

面向对象分析以及创新设计讲座7GRas p模式.ppt

第7讲. 模式与对象设计 曹健 上海交通大学 计算机科学与工程系 内容 责任分配 设计模式 GRASP模式 案例 1.1引言 我们已经创建了领域模型 确定有什么样的方法,属于谁,对象之间如何交互,这是开发面向对象系统的核心 但是如何做? GRASP模式是帮助我们理解详细的原则和所需要的思考方法的学习工具 这些模式与如何将责任分配给类相关 1.2责任和方法 责任:分类器的契约和责任 对象具有责任意味着: 自己做某些事情,例如创建一个对象或者进行一个计算 控制或者协调其它对象的活动 “一个sale对象负责创建SalesLineItems( a doing)” 要想知道一个对象的责任,需要: 知道私有的封装的数据 知道相关的对象 知道可以派生或者计算的对象 “一个sale对象需要负责knowing its total” 责任不等同于方法,但是方法是用来完成责任的 Sale 类可以定义一个或多个方法来计算总价 被命名为 getTotal的方法 或者发送getSubTotal 消息给每一个SalesLineItem 对象,来获取每一个类别的价格 1.3责任和交互图 责任可以通过编程实现 或者可以用过创建交互图来进行分配 2. 模式 2.1学习的模式 在我们人类社会中,许多方面的成功经验都可以归结为模式 事实上,教育的重要目标就是把学习的模式从一代传向下一代 下面,我们将探索如何依据

文档评论(0)

1亿VIP精品文档

相关文档