`
ponlya
  • 浏览: 159525 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

设计模式- 观察 - 中介 -等等等

阅读更多

观察者

即是触发联动

即是订阅某个对象的变化,一旦变化就通知做其它的事情。类似于通知之类的,JDK自己有相应的Observableo类及Observer接口,不过,内部实现实质无太大区别。

public class Target{

	private List<Observer> ofObservers = new ArrayList<Observer>();
	......
	protected void notifyObServers() {
		for (Observer o : ofObservers) {
			o.update(this); //触发动作
		}
	}

 后面,将相关信息推送到对应实体中。有点类似前一段时间做的消息推送,也是需要注册与退订等。

 中介者

类似于中间表?将对象交互关系移动到中介。封装的交互的同时也方便后期维护这个变化关系。

 

 迭代器

貌似还是有点封装内部不同的接口,从而向外提供统一的数据操作(读,遍历等)的接口。

 

策略模式

使用了接口来完成选择实现,将实现延迟到需要时传入。还是有点类似工厂,只是工厂返回对象,这里处理计算,然后没有了if(xxxx ==1 )...的了…………理解有误???

 

状态模式

即是达到一定状态后,服务接口的行为发生了变化。如密码错过几次后就不允许再登陆了。

 

备忘录模式

保存和恢复内部状态。

 

享元模式

用作分享与共享,可用于减少对象数量???还需要定期清理过期对象,那为何不用缓存框架来做?不懂。

 

解释器模式

分离实现,解释执行。不会用。

 

装饰器模式

动态组合?后面再研究了。

 

桥接模式

分离抽象和实现。

 

访问者

预留通路,回调实现。

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics