面向对象设计------ 面向对象设计准则

分析:提取,整理用户需求,建立问题域精确模型
设计:转变需求为系统实现方案,建立求解域模型
类---------------------对象
属性-------------------数据结构
方法--------------------算法
关系-------------------------消息传递
行为--------------------------控制

  • 在实际的软件开发过程中分析和设计的界限是模糊的
  • 分析和设计活动是一个多次反复迭代的过程
  • 面向对象方法学在概念和方法上的一致性,保证了在各项开发活动之间的平滑(无缝过渡,领域专家和开发人员能够比较容易地跟踪整个开发过程,这是面向对象方法与传统方法比较起来所具有地一大优势。

面向对象设计准则
1.抽象:
通过像类抽象机制实现
提高可重用性
2.信息隐蔽
通过封装性实现 提高独立性
3.弱耦合
对象间耦合:交互耦合,继承耦合
交互耦合:对象间通过消息连接。(松散)
减少信息数
降低信息连接复杂度(减少参数个数,降低参数复杂度)
继承耦合:一般类和特殊类之间耦合(紧密)
基类和派生类可看作市系统中粒度更大模块
一般来说,紧密地继承耦合与高度的一般——特殊内聚是一致的
4.强内聚
服务内聚:一个服务只完成一个功能
类内聚:一个类只有一个用途,其中不包含无用的属性或服务,否则分解
一般——特殊内聚:设计合理,对领域知识正确抽取(例如:)
面向对象设计------ 面向对象设计准则
5.可重用性
尽量利用已有的类(类库,开发相似系统已创建类)
创建新类考虑以后可重用性