
设计模式
黑色之路
每个人都依靠自己的知识和认识,却又被之所束缚,还将这些称之为现实。但知识和认识是非常暧昧的东西,那个现实也许只不过是镜中花水中月。人们都生活在自我意识之中,你不这么认为吗?
展开
-
Java设计模式透析之 —— 策略(Strategy)
转载请注明出处:http://blog.youkuaiyun.com/guolin_blog/article/details/8986285今天你的leader兴致冲冲地找到你,希望你可以帮他一个小忙,他现在急着要去开会。要帮什么忙呢?你很好奇。他对你说,当前你们项目的数据库中有一张用户信息表,里面存放了很用户的数据,现在需要完成一个选择性查询用户信息的功能。他说会传递给你一个包含许多用户名的转载 2015-04-26 20:20:02 · 482 阅读 · 0 评论 -
Java代理模式(Proxy模式)
理解并使用设计模式,能够培养我们良好的面向对象编程习惯,同时在实际应用中,可以如鱼得水,享受游刃有余的乐趣。Proxy是比较有用途的一种模式,而且变种较多,应用场合覆盖从小结构到整个系统的大结构,Proxy是代理的意思,我们也许有代理服务器等概念,代理概念可以解释为:在出发点到目的地之间有一道中间层,意为代理。设计模式中定义:为其他对象提供一种代理以控制对这个对象的访问。为什么原创 2015-05-19 18:11:41 · 1225 阅读 · 1 评论 -
Java外观模式(Facade模式)
外观模式(Facade)的定义:为子系统中的一组接口提供一个一致的界面。Facade一个典型应用就是数据库JDBC的应用,如下例对数据库的操作:public class DBCompare { Connection conn = null; PreparedStatement prep = null; ResultSet rset = null; try { Cl原创 2015-05-20 12:59:19 · 1353 阅读 · 0 评论 -
Java单态模式(Singleton模式)
定义:Singleton模式主要作用是保证在Java应用程序中,一个类Class只有一个实例存在。在很多操作中,比如建立目录 数据库连接都需要这样的单线程操作。还有,singleton能够被状态化;这样,多个单态类在一起就可以作为一个状态仓库一样向外提供服务,比如,你要论坛中的帖子计数器,每次浏览一次需要计数,单态类能否保持住这个计数,并且能synchronize的安全自动加1,如原创 2015-05-07 20:15:45 · 1030 阅读 · 0 评论 -
Java迭代模式(Iterator模式)
上了这么多年学,我发现一个问题,好象老师都很喜欢点名,甚至点名都成了某些老师的嗜好,一日不点名,就饭吃不香,觉睡不好似的,我就觉得很奇怪,你的课要是讲的好,同学又怎么会不来听课呢,殊不知:“误人子弟,乃是犯罪!”啊。好了,那么我们现在来看老师这个点名过程是如何实现吧:1、老规矩,我们先定义老师(Teacher)接口类:public interface Teacher {原创 2015-05-27 19:58:39 · 1197 阅读 · 0 评论 -
Java适配器模式(Adapter模式)
适配器模式定义:将两个不兼容的类纠合在一起使用,属于结构型模式,需要有Adaptee(被适配者)和Adaptor(适配器)两个身份。为何使用适配器模式我们经常碰到要将两个没有关系的类组合在一起使用,第一解决方案是:修改各自类的接口,但是如果我们没有源代码,或者,我们不愿意为了一个应用而修改各自的接口。 怎么办?使用Adapter,在这两种接口之间创建一个混合接口(混血儿)。如何原创 2015-05-19 10:53:07 · 1304 阅读 · 0 评论 -
公共技术点之面向对象六大原则
目录(?)[-]概述Volley相关资料单一职责原则 Single Responsibility Principle简述示例优点里氏替换原则 Liskov Substitution Principle简述示例优点缺点依赖倒置原则 Dependence Inversion Principle简述示例优点开闭原则 Open-Close Principle转载 2015-06-07 09:53:37 · 398 阅读 · 0 评论 -
Java模板模式(Template模式)
模板方法 概述 定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。 TemplateMethod使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。 适用性 1.一次性实现一个算法的不变的部分,并将可变的行为留给子类来实现。 2.各子类中公共的行为应被提取出来并集中到一个公共父类中以避原创 2015-07-06 21:38:45 · 1230 阅读 · 0 评论 -
在Android中探秘建造者模式
原 在Android中探秘建造者模式 fyales发布时间: 2015/03/27 18:02 阅读: 1100 收藏: 16 点赞: 0 评论: 0摘要在Android开发过程中,我发现很多安卓源代码里应用了设计模式,比较常用的有适配器模式(各种adapter),建造者模式(Alert Dialog的构建)等等。虽然我们对大多数设计模式都有所了解,转载 2016-08-08 18:45:59 · 370 阅读 · 0 评论 -
Java桥模式(Bridge模式)
Bridge定义:将抽象和行为划分开来,各自独立,但能动态的结合。为什么使用桥模式通常,当一个抽象类或接口有多个具体实现(concrete subclass),这些concrete之间关系可能有以下两种:这多个具体实现之间恰好是并列的,如前面举例,打桩,有两个concrete class:方形桩和圆形桩;这两个形状上的桩是并列的,没有概念上的重复,那么我们只要使用继承就可以了。实际原创 2015-05-16 10:30:52 · 1871 阅读 · 0 评论 -
Android视图状态及重绘流程分析,带你一步步深入了解View(三)
转载请注明出处:http://blog.youkuaiyun.com/guolin_blog/article/details/17045157在前面一篇文章中,我带着大家一起从源码的层面上分析了视图的绘制流程,了解了视图绘制流程中onMeasure、onLayout、onDraw这三个最重要步骤的工作原理,那么今天我们将继续对View进行深入探究,学习一下视图状态以及重绘方面的知识。如果你还没有看过我转载 2015-05-05 20:04:38 · 743 阅读 · 0 评论 -
Java设计模式透析之 —— 组合(Composite)
转载请注明出处:http://blog.youkuaiyun.com/guolin_blog/article/details/9153753听说你们公司最近新推出了一款电子书阅读应用,市场反应很不错,应用里还有图书商城,用户可以在其中随意选购自己喜欢的书籍。你们公司也是对此项目高度重视,加大了投入力度,决定给此应用再增加点功能。好吧,你也知道你是逃不过此劫了,没过多久你的leader就找到转载 2015-04-26 20:19:47 · 443 阅读 · 0 评论 -
Java设计模式透析之 —— 适配器(Adapter)
转载请注明出处:http://blog.youkuaiyun.com/guolin_blog/article/details/9400141今天一大早,你的leader就匆匆忙忙跑过来找到你:“快,快,紧急任务!最近ChinaJoy马上就要开始了,老板要求提供一种直观的方式,可以查看到我们新上线的游戏中每个服的在线人数。”你看了看日期,不是吧!这哪里是马上要开始了,分明是已经开始了!这怎么转载 2015-04-26 20:21:56 · 397 阅读 · 0 评论 -
Java设计模式透析之 —— 单例(Singleton)
转载请注明出处:http://blog.youkuaiyun.com/guolin_blog/article/details/8860649写软件的时候经常需要用到打印日志功能,可以帮助你调试和定位问题,项目上线后还可以帮助你分析数据。但是Java原生带有的System.out.println()方法却很少在真正的项目开发中使用,甚至像findbugs等代码检查工具还会认为使用System.out.p转载 2015-04-26 20:17:43 · 376 阅读 · 0 评论 -
Java设计模式透析之 —— 模板方法(Template Method)
转载请注明出处:http://blog.youkuaiyun.com/guolin_blog/article/details/8744002今天你还是像往常一样来上班,一如既往地开始了你的编程工作。项目经理告诉你,今天想在服务器端增加一个新功能,希望写一个方法,能对Book对象进行处理,将Book对象的所有字段以XML格式进行包装,这样以后可以方便与客户端进行交互。并且在包装开始前和结束后要打转载 2015-04-26 20:18:13 · 370 阅读 · 0 评论 -
Java工厂模式(Factory模式)
工厂方法 概述 定义一个用于创建对象的接口,让子类决定实例化哪一个类。FactoryMethod使一个类的实例化延迟到其子类。 适用性 1.当一个类不知道它所必须创建的对象的类的时候。 2.当一个类希望由它的子类来指定它所创建的对象的时候。 3.当类将创建对象的职责委托给多个帮助子类中的某一个,并且你希望将哪原创 2015-04-29 21:18:18 · 707 阅读 · 0 评论 -
Java原型模式(Prototype模式)
Prototype模式定义:用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。Prototype模式允许一个对象再创建另外一个可定制的对象,根本无需知道任何如何创建的细节,工作原理是:通过将一个原型对象传给那个要发动创建的对象,这个要发动创建的对象通过请求原型对象拷贝它们自己来实施创建。如何使用原型模式因为Java中的提供clone()方法来实现对象的克隆,所以Pro原创 2015-05-11 18:38:24 · 1266 阅读 · 2 评论 -
Java观察者模式(Observer模式)
观察者模式 概述 在一对多依赖的对象关系中, 如果这个'一'对象状态发生了变化,那么它所有依赖的'多'对象都应该被通知,然后做相应的变化,这就是观察者模式. 就如同'多'对象一直在观察'一'对象的状态变化一样. 定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。 适用性原创 2015-04-28 21:53:14 · 979 阅读 · 0 评论 -
Java共享模式/享元模式(Flyweight模式)
Flyweight定义:避免大量拥有相同内容的小类的开销(如耗费内存),使大家共享一个类(元类)。为什么使用共享模式/享元模式面向对象语言的原则就是一切都是对象,但是如果真正使用起来,有时对象数可能显得很庞大,比如,字处理软件,如果以每个文字都作为一个对象,几千个字,对象数就是几千,无疑耗费内存,那么我们还是要"求同存异",找出这些对象群的共同点,设计一个元类,封装可以被共享的类,另外,还原创 2015-05-12 21:37:55 · 787 阅读 · 0 评论 -
Android进阶之大话设计模式
一般来说,常用的设计模式有以下八种:单例、工厂、观察者、代理、命令、适配器、合成、访问者一般来说,常用的设计模式有以下八种:单例、工厂、观察者、代理、命令、适配器、合成、访问者单例模式:目的是为了让系统中只有一个调用对象,缺点是单例使其他程序过分依赖它,而且不同单例运行在不同进程中,使得维护困难;工厂模式:生产固定的一些东西,如抽象类,缺点是产品转载 2016-08-08 18:53:37 · 337 阅读 · 0 评论