随笔分类 - 设计模式
摘要:[toc] 七种写法的单列模式 版本1:饿汉式 版本2:多线程可能导致多个实例 版本3:效率有待优化 版本4:Double Check可能出现空指针异常 版本5:Double Check 版本6:通过静态内部类构造 版本7:通过枚举构造
阅读全文
摘要:[toc] 观察者模式 定义 观察者模式又称为发布/订阅(Publish/Subscribe)模式。它定义了一种一对多的依赖关系,多个观察者对象可同时监听某一主题对象当该主题对象状态发生变化时,相应的所有观察者对象都可以收到通知。 角色划分 (观察者关注的事件) + upda
阅读全文
摘要:[toc] 策略模式 定义 策略模式体现了两个非常基本的面向对象设计的原则 1.封装变化的概念 2.编程中使用接口,而不是对接口的实现 定义 定义一组算法,将每个算法都封装起来,并且使他们之间可以互换 策略模式使这些算法在客户端调用它们的时候能够互不影响地变化 意义 策略模式使开发人员能够开发出由许
阅读全文
摘要:[toc] 装饰模式VS代理模式 个人理解 代理模式:我想做,但不能做,我需要有一个能干的人来帮我做 装饰模式:我想做,但不能做,我需要各类特长的人来帮我做,但是我有时需要很多人来帮我做,有时又只需要一个人做。 区别:Proxy模式需要的是一个能人,而Decorator模式需要的是一个团队 代理模式
阅读全文
摘要:[toc] 代理模式 代理模式介绍 为什么要用代理模式? 代理模式的作用是:为其他对象提供一种代理以控制对这个对象的访问 在某些情况下,一个客户不想或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介作用 代理模式种类 如果按照代理创建的时期来进行分类的话,可以分为两种:静态代理
阅读全文