天天看点

设计模式怎样解决设计问题[1] 寻找合适的对象

设计模式怎样解决设计问题[1] 寻找合适的对象

设计模式怎样解决设计问题[1] 寻找合适的对象

 面向对象设计最困难的部分是将系统分解成对象集合。因为要考虑许多因素:封装、依赖关系、灵活性、性能、演化、复用等等,它们都影响着系统的分解,并且这些因素通常都是互相冲突的。

寻找合适的类是为了便于你设计出好用的类,包含了3种设计模式:

Composite模式(组合模式),State模式(状态模式)以及Strategy模式(策略模式)

Composite模式(组合模式)

javascript:void(0)

组合模式以树形结构为主,其目的是为了让客户端使用的时候不用区分整体与局部之间的差异,整体与局部的调用方法一致(其实并不好用......)。

设计模式怎样解决设计问题[1] 寻找合适的对象

State模式(状态模式)

状态模式中,需要定义一个状态虚类,然后将不同状态的实现延迟到继承的子类当中,可以解除处理数据类的耦合度,非常实用。

项目源码:

https://github.com/YouXianMing/StatePattern

设计模式怎样解决设计问题[1] 寻找合适的对象

Strategy模式(策略模式)