随笔分类 - <S>设计模式
Java常见设计模式学习
摘要:先举一个例子解释一下生活中的适配器模式:公司老总要求工程部经理来汇报一下公司内部的消防设备使用和维护情况。接到通知后,工程部经理老宋找了专门负责消防设备统计的维护人员小王,请他调出了去年全年的维护记录。然后老宋前去向总经理汇报工作。 在这个例子中,总经理的任务是:找工程部经理(接口)了解一下消防设备
阅读全文
摘要:在本系列的上一篇文章中,我们讨论了JDK对于观察者模式的一套实现。今天我们将要从另一个角度来探索Tomcat中是如何利用观察者模式加载各个组件。不过今天的任务不是解释Tomcat,所以我会单独把重点抽象出来展现如何在一个实际利用中使用Observer。 先谈一下我对观察者模式的理解。对于对象而言,观
阅读全文
摘要:为了实现多个模块之间的联动,最好的方法是使用观察者模式。网上介绍的资料也比较多,今天我就从另一个方面谈谈自己对观察者模式的理解。从JDK提供的支持库里,我们能够找到四个对象:Observable、Observer、EventListener、EventObject。 先模拟一个后台处理过程: 稍微对
阅读全文
摘要:迭代模式的基本定义:对于一组对象集合(数组、堆栈、列表或散列),用户无需关心它的底层实现而能够通过调用统一接口遍历当中的所有元素。由于jdk已经对常见的迭代模式实现了封装,本文直接提供Collection和Iterator两个接口的模拟。 定义Iterator接口 /* * 设计迭代接口 */ pu
阅读全文
摘要:有高手云:了解设计模式才算是入门级的程序员。 所以为了入门我打算把我学习到的设计模式逐条总结下来。和别人的文章不同,我几乎只提供了测试源码与细节分类。原因是,我相信对于设计来说,你永远无法给出终极答案。不同的人看到会有不同的理解,所以大家一起讨论吧。 一、静态代理 设计测试接口,提供request(
阅读全文