对象与设计

代码设计的定义:确定系统的需求、作用域、目标 面向对象编程将职责从客户端代码中移到专门的对象中,尽量减少相互依赖 内聚是一个模内部各部分之相互关联程度的度量 系各部分代码紧密绑在一起时,就会产生紧密耦合,这时在一个组件中的变化会迫使其他部件随之改变 正交指将职责相关的组件紧密组合在一起,而外部系统环境隔离开,保持独立 正交主张重用组件,期待不需要任何特殊配置就可以把一个组件插入到新系统中 定义类:一个类只有一个主要职责,并且任务要尽可能独立 多态(类切换):在一个公共接口后维护多个实现 封装:对客户端代码隐藏数据的功能;封装可以帮助我们创建正交的代码;封装范围不怎么重要,无论封装的规模是大是小,类和客户端代码都必须同时关注封装的实现 不要被经验所左右,而要让代码中的结构和关系来引导你———-《为接口而不是实现而编程》 我们应尽量减少同一时间在脑中思考的对象,要能分清主次,把问题抽象出来。所谓的”心智把戏“,指的是权衡哪些东西是真正需要放到系统中的过程 4个说明代码需要很可能需要检查的路标: 代码重复(写代码感觉似曾相识) 类知道的太多 万能的类 条件语句 UML 类是类图的主要部分 通常用斜体类名或者增加{abstract}到类名下来表示该类是抽象类 属性用于描述一个类的属性 操作用于描述类方法,更准确的说,用于描述可以在类的实例上调用的操作 UML一般用”泛化“来描述继承关系 UML用”实现“来描述接口和实现接口的类之间的关系 当一个类的属性保存了对另一个类的一个实例(或多个实例)的引用时,就产生了关联(单向关联、双向关联) 聚合和组合都描述了一个类长期持有其他类的一个或者多个实例的情况 一个对象使用另一个对象的关系在UML中被描述为一个依赖关系 时序图是基于对象而不是基于类的,它用于系统中过程化的行为建模

posted on 2012-03-20 10:24  wenjuncool  阅读(186)  评论(0编辑  收藏  举报

导航