随笔分类 -  设计模式

This is design pattern.
摘要:代理以通过Internet为它们的代理对象搬运的整个方法调用而出名,它也可以代替某些懒惰的对象做一些事情。 所谓的代理,就是代表某个真实地对象。在这个案例中,代理就是糖果机对象一样,但其实幕后是它利用网络和 一个远程的真正糖果机沟通。我们必须确定糖果机能够通过网络请求并且提供服务;我们也需要让... 阅读全文
posted @ 2016-01-03 00:44 likeshu 阅读(140) 评论(0) 推荐(0)
摘要:状态模式,允许对象在内部状态改变时改变它的行为,对象看起来好像修改了它的类。 这个模式将状态封装成为独立的类,并将动作委托到代表当前状态的对象,我们知道行为会随着内部状态而改变。糖果机提供了一个很好地例子:当糖果机是在NoQuarterState或HasQuarterState两种不同的状态时... 阅读全文
posted @ 2016-01-01 20:37 likeshu 阅读(182) 评论(0) 推荐(0)
摘要:封装算法块,好让子类可以在任何时候都可以将自己挂接进运算里。 模板方法模式,在一个方法中定义一个算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以在不改变算法结构的情况下,重新定义算法中得某些步骤。 这个模式是用来创建一个算法的模板。什么是模板?如你所见的,模板就是一个方法。更具体地说,这个 阅读全文
posted @ 2015-12-27 00:18 likeshu 阅读(162) 评论(0) 推荐(0)
摘要:管理良好的集合。有许多种方法可以把对象堆起来成为一个集合。比如,数组、堆栈、列表或者是散列表中。有时候可以不用让客户看到我们的实现,怎么让客户遍历对象而又无法窥视你存储对象的方式,可以学习创建一些对象超集合。 我们可以对遍历封装,那么这就是迭代器模式,依赖一个名为迭代器的接口。如JAVA中就提... 阅读全文
posted @ 2015-12-12 11:21 likeshu 阅读(147) 评论(0) 推荐(0)
摘要:适配器模式转换接口,将原来两个不太适合的接口动作通过中间的接口给融洽在一起,从而共同操作,比如生活中得物理插座转换头等等。 在不同的接口之间进行适配经常是我们需要干得工作,于是设计模式给我们起了一个专用名词,适配器模式,使得两个不兼容的接口之间可以进行相互通信。外观模式则是把众多的接口进行把很多接口 阅读全文
posted @ 2015-11-27 23:53 likeshu 阅读(158) 评论(0) 推荐(0)
摘要:命令模式,如果有一个遥控器,万能的,不是说一个空调万能遥控器可以遥控几乎所有品牌的遥控器,而是一个遥控器作为一个智能家居的入口,把所有智能家居的入口给绑定起来,控制所有的开关动作。将所有的命令组合起来,组成一道简单地命令,这样或许比较好。于是就出现了命令模式。 命令模式其实是把命令和对象的执行... 阅读全文
posted @ 2015-11-27 23:51 likeshu 阅读(166) 评论(0) 推荐(0)
摘要:单例模式,single instance,一个类只有一个对象、一个实例。怎么保证这个类生产的对象只有一个,如果在多线程的时候,如何保证线程安全。 先给出一个没有保证线程安全的代码。 为上面说没有线程安全,通俗的说就是在开多线程的情况下,可能会出问题。下面给一个我随意写得一个代码。 执行情况, 这里只 阅读全文
posted @ 2015-11-27 23:47 likeshu 阅读(161) 评论(0) 推荐(0)