上一页 1 2 3 4 5 6 7 ··· 23 下一页
摘要: 也是简单的概念。 一个类,包含一个需要代理的对象的接口。 操作代理类,会执行实际的对象。 难点不在于代理模式,而是为什么要代理。肯定是因为不能直接使用,或无法直接使用。 所以难带反而在于代理模式如何去实现和需要代理对象之间的沟通。代理模式反而是最简单的。 阅读全文
posted @ 2019-07-05 10:46 琴鸟 阅读(107) 评论(0) 推荐(0) 编辑
摘要: 还是要吐槽一下,太多翻译,让人无语,叫共享微粒,或者直接微粒,为什么叫享元?享单独一个词,国人惯例必定是享受的的意思。算了,翻译也不容易。 还是没办法,希望国人多多发明自己的技术,而不是翻译别人。导致学习规模比英文世界的人大。 意图:运用共享技术有效地支持大量细粒度的对象 感觉没什么好说。就是共享。 阅读全文
posted @ 2019-07-05 10:35 琴鸟 阅读(198) 评论(0) 推荐(0) 编辑
摘要: 开发代码的时候会经常用到。 有时候写好了很多基础库。 开始使用这些库来完成某个复杂功能的时候,如果实现某个功能,需要这些基础库之间交互太繁多。而我们明显只想调用一个方法。 那么一般可以先假设调用一个方法及其参数。 在这个方法中会去交互基础库。并把这个方法放入到一个类中。就是类就是外观类。 阅读全文
posted @ 2019-07-05 09:58 琴鸟 阅读(144) 评论(0) 推荐(0) 编辑
摘要: 第三次复习 场景: 通常情况下,扩展一个类的功能会使用继承方式来实现。但继承具有静态特征,耦合度高,并且随着扩展功能的增多,子类会很膨胀。 如果使用组合关系来创建一个包装对象(即装饰对象)来包裹真实对象,并在保持真实对象的类结构不变的前提下,为其提供额外的功能, 这就是装饰器模式的目标。 要清楚,此 阅读全文
posted @ 2019-07-05 09:28 琴鸟 阅读(166) 评论(0) 推荐(0) 编辑
摘要: 恩。很少用到的模式。 基本高级语言,都包含了基本的数据结构。如树,map。list. 所以感觉组合模式。在高级语言基本不会用到。 阅读全文
posted @ 2019-07-04 21:49 琴鸟 阅读(130) 评论(0) 推荐(0) 编辑
摘要: 看下他的接口,实在没什么好说。 输入,输出都是集合。 简单,明了,目的明确。 public interface Criteria { public List<Person> meetCriteria(List<Person> persons);} 阅读全文
posted @ 2019-07-04 21:39 琴鸟 阅读(108) 评论(0) 推荐(0) 编辑
摘要: GOF取的名字,有时候名字比模式本身更难懂。 有的如模板模式,都不用看代码,就知道这个模式是做什么的。 而这个bridge,。。看名字,无法知道它想做什么。 无语。看了几次,没看懂。今天看懂了,发现以前用过很多次了。 一句话就是 虚类的虚方法里面又调用了接口的方法,用接口的多态和虚函数的多态来组合多 阅读全文
posted @ 2019-07-04 15:57 琴鸟 阅读(261) 评论(0) 推荐(0) 编辑
摘要: 适配器模式非常简单。就是建立一个适配器。 把一个现有的类的对象包含过来,利用现有对象的方法,做一些改动。来满足现在的新需求。 这也是组合思想的最简单的实践。 而android 的adapter.完全不是设计模式的adapter的意思。 可见不一定要满足设计模式的东西才能叫适配器。 google 就把 阅读全文
posted @ 2019-07-04 15:39 琴鸟 阅读(96) 评论(0) 推荐(0) 编辑
摘要: 就是clone,就是copy一份自己。 这个倒是非常有用处。很多时候希望用某个数据去测试,又不影响原来数据。那么就需要 克隆。可是原型这个词有点吓人。叫克隆多好。 高级语言,如java的默认clone,对于集合类型是只copy指针。所以需要自己重写clone方法。实现深拷贝。也就是原型。 创建型模式 阅读全文
posted @ 2019-07-04 11:54 琴鸟 阅读(175) 评论(0) 推荐(0) 编辑
摘要: 建造者模式是非常自然的想法。 把变化的部分,用接口表示。 也就是ibulider. 之后传入不同的builder. 并调用builder的方法。 这个也叫模式? 就是接口的使用啊。 有点像模板方法。 模板方法是继承虚类,重写虚方法。 这里是实现接口。并传递进去。 阅读全文
posted @ 2019-07-04 11:22 琴鸟 阅读(136) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 ··· 23 下一页