
java设计模式
文章平均质量分 50
MySpace在路上
这个作者很懒,什么都没留下…
展开
-
Android设计模式系列(7)--SDK源码之命令模式
命令模式,在.net,java平台的事件机制用的非常多,几乎每天都与之打交道。 android中对我印象最深的就是多线程多进程的环境,所以必然大量使用到Runbable,Thread,其实用的就是最简单的命令模式。 命令模式,Command Pattern,把请求封装为一个对象,多么巧妙的一个说法啊。 1.意图 将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化,对请求排转载 2014-01-20 10:48:34 · 400 阅读 · 0 评论 -
Android设计模式系列(12)--SDK源码之生成器模式(建造者模式)
建造者模式把构造和表示分离开,根据客户需求生产一个相应的对象。 本来呢,我们根据Builder接口实现不同的具体的ConcreteBuilder,就可生产不同的对象了。 但是,下面例子的只有一个Builder,所以也没有接口Builder,也没有其他的ConcreteBuilder。 但是我今天要讲的例子太简单,简单到都不觉得是建造者模式,但是又有建造者模式的感觉。 1. 意图 将一转载 2014-01-20 10:50:59 · 383 阅读 · 0 评论 -
java设计模式类图大全
近来在看书实现GoF的23个设计模式,自己一点点地用建模工具按照自己的理解画出类图(是比较符合我个人思考理解的,个人觉得比通用类图更详细些),碰巧找到了一个挺好用的UML建模工具StarUML,也刚好从该软件中发现其实里面有默认的23个设计模式的通用类图,这就省去了我频繁地找书查看这些类图了,直接将它们保存为图片格式放到手机里面,是不是地就可以拿出来看看那,思考理解一下各个设计模式的原理,最后将它转载 2014-01-21 12:00:29 · 957 阅读 · 0 评论 -
Android设计模式系列(2)--SDK源码之观察者模式
观察者模式,是一种非常常见的设计模式,在很多系统中随处可见,尤其是涉及到数据状态发生变化需要通知的情况下。 本文以AbstractCursor为例子,展开分析。 观察者模式,Observer Pattern,是一个很实用的模式,本人曾经接触到的各种平台以及曾经参与项目中打印模板解释器中都用到了此模式。 1.意图 定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它转载 2014-01-20 10:44:41 · 445 阅读 · 0 评论 -
Android设计模式系列(9)--SDK源码之适配器模式
对于android开发者来说起,适配器模式简直太熟悉不过,有很多应用可以说是天天在直接或者间接的用到适配器模式,比如ListView。 ListView用于显示列表数据,但是作为列表数据集合有很多形式,有Array,有Cursor,我们需要对应的适配器作为桥梁,处理相应的数据(并能形成ListView所需要的视图)。 正是因为定义了这些适配器接口和适配器类,才能使我们的数据简单灵活而又正确的显转载 2014-01-20 10:49:42 · 404 阅读 · 0 评论 -
Android设计模式系列(6)--SDK源码之享元模式
享元模式,给我的感觉就是对象池,缓存单例对象。 java中的享元模式最经典的例子就是String类了,还有一个最容易理解的就是word文档字符共享的例子,也是享元模式的经典应用。 本文对android中的sql编译类SQLiteCompiledSql说明,展开分析,也是很容易理解的一个例子,其实,android SDK中必然有很多地方需要用到享元模式。 享元模式,Flyweight Pat转载 2014-01-20 10:48:01 · 488 阅读 · 0 评论 -
Android设计模式系列(1)--SDK源码之组合模式
Android中对组合模式的应用,可谓是泛滥成粥,随处可见,那就是View和ViewGroup类的使用。在android UI设计,几乎所有的widget和布局类都依靠这两个类。 组合模式,Composite Pattern,是一个非常巧妙的模式。几乎所有的面向对象系统都应用到了组合模式。 1.意图 将对象View和ViewGroup组合成树形结构以表示"部分-整体"的层次结构(View转载 2014-01-20 10:43:26 · 380 阅读 · 0 评论 -
Android设计模式系列(11)--SDK源码之策略模式
策略模式其实特别简单(听到这句话,大家是不是心里一下子放松了?)。 比如排序,官方告诉大家我这里有一个排序的接口ISort的sort()方法,然后民间各尽其能,实现这个排序的方法:冒泡,快速,堆等等。 这些方法就是“不同的策略”。 然后,某个模块下,需要一个排序方法,但是暂时不能指定具体的sort方法(出于扩展的考虑),就需要使用ISort接口了。 最后,具体什么场景下,传入什么具体的so转载 2014-01-20 10:50:37 · 422 阅读 · 0 评论 -
Android设计模式系列(0)--Android源码中所使用到的设计模式design patterns
转载 2014-01-20 10:58:17 · 463 阅读 · 0 评论 -
Java开发中的23种设计模式详解
http://zz563143188.iteye.com/blog/1847029 设计模式(Design Patterns) ——可复用面向对象软件的基础 设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被转载 2013-12-09 10:38:00 · 498 阅读 · 0 评论 -
Android设计模式系列(3)--SDK源码之单例模式
单例模式,可以说是GOF的23种设计模式中最简单的一个。 这个模式相对于其他几个模式比较独立,它只负责控制自己的实例化数量单一(而不是考虑为用户产生什么样的实例),很有意思,是一个感觉上很干净的模式,本人很喜欢这个模式。 android中很多地方都用到了单例模式,本文以输入法管理者InputMethodManager为例,展开分析。 单例模式,Singleton Pattern,能够以其特有转载 2014-01-20 10:45:39 · 440 阅读 · 0 评论 -
java设计模式—工厂模式
一、工厂模式主要是为创建对象提供过渡接口,以便将创建对象的具体过程屏蔽隔离起来,达到提高灵活性的目的。 工厂模式在《Java与模式》中分为三类: 1)简单工厂模式(Simple Factory):不利于产生系列产品; 2)工厂方法模式(Factory Method):又称为多形性工厂; 3)抽象工厂模式(Abstract Factory):又称为工具箱,产生产品族,但转载 2013-09-14 16:24:59 · 355 阅读 · 0 评论 -
Android设计模式系列(5)--SDK源码之备忘录模式
备忘录模式,在工作代码中,要么不用,要么经常用到。 举个例子,程序员喜欢写代码,coding,coding,这个时候它的状态是很high,但是每隔一段时间总要去上一下厕所,状态是放松relax,上完测试归来后又恢复到high的状态,继续coding。这个过程对于身后的老板来说,它默认同意你离开去上厕所,他也希望你回来后恢复high的状态继续工作,但是你在这个过程中上厕所的这件事,他是不需要了解细转载 2014-01-20 10:47:00 · 491 阅读 · 0 评论 -
Android设计模式系列(4)--SDK源码之模板方法模式
模板方法,和单例模式是我认为GOF的23中最简单的两种模式。 但是我个人对模板方法的经典思想特别推崇,虽然模板方法在大对数情况下并不被推荐使用,但是这种通过父类调用子类的方法,使用继承来改变算法的一部分,是面向对象的一种基本认识。 打比方说父亲有很多理想,就行医救人吧,但是父亲医术不行,只能靠儿子,儿子长大后遵从父亲大志,春风拂面,妙手回春,实现了父亲的理想,儿子做的事情早在出生前就定下来了,转载 2014-01-20 10:46:15 · 393 阅读 · 0 评论 -
Android设计模式系列(8)--SDK源码之工厂方法模式
工厂方法模式,往往是设计模式初学者入门的模式,的确,有人称之为最为典型最具启发效果的模式。 android中用到了太多的工厂类,其中有用工厂方法模式的,当然也有很多工厂并不是使用工厂方法模式的,只是工具管理类。 今天以ThreadFactory举例说明一下简单工厂模式和工厂方法模式。 工厂方法模式,Factory Method,简单的方式,不简单的应用。 1.意图 定义一个用于创建转载 2014-01-20 10:49:06 · 447 阅读 · 0 评论