通过单例模式可以保证系统中一个类只有一个实例而且该实例易于外界访问,从而方便对实例个数的控制并节约系统资源。今天我们通过实际代码来详细讲解单例的使用场景和线程安全问题······...
分类:
其他好文 时间:
2015-04-14 08:31:19
阅读次数:
152
使用场景-- 通过new产生一个对象需要非常繁琐的数据准备或访问权限,则可以使用原型模式-- 就是java中的克隆技术,以某个对象为原型复制出新的对象 ,显然,新的对象具备原型对象的特点优势:效率高(直接克隆,避免了重新执行构造的过程步骤)。克隆类似于new,但是不同于new。new创建新的对象属性...
分类:
其他好文 时间:
2015-04-14 00:11:23
阅读次数:
195
1.FactoryMode(工厂模式) 定义:提供创建对象的接口,方便对象的创建。2.静态工厂方法模式(Static Factory Method Mode) 定义:对于对象的创建,交给工厂类内部的静态方法实现。 使用场景:适用于基类的子类较少时,且基本不会再增加子类时。 坏处,当子类...
分类:
编程语言 时间:
2015-04-13 10:50:43
阅读次数:
129
PHP迭代器:可帮助构造特定的对象,那些对象能够提供单一标准接口循环或迭代任何类型的可计数数据。(不是特别常用,在PHP中)使用场景:1.访问一个聚合对象的内容而无需暴露它的内部表示。2.支持对聚合对象的多种遍历。3.为遍历不同的聚合结构提供一个统一的接口(即,多态迭代)。PHP代码实现: v...
分类:
Web程序 时间:
2015-04-10 17:16:27
阅读次数:
113
策略模式:策略模式设计帮助构建的对象不必自身包含逻辑,而是能够根据需要利用其他对象中的算法。使用场景:例如有一个CD类,我们类存储了CD的信息。原先的时候,我们在CD类中直接调用getCD方法给出XML的结果随着业务扩展,需求方提出需要JSON数据格式输出这个时候我们引进了策略模式,可以让使用方根据...
分类:
Web程序 时间:
2015-04-10 16:54:59
阅读次数:
135
单例模式通过提供自身共享实例的访问,单例设计模式用于限制特定对象只能被创建一次。使用场景例如数据库实例,一般都会走单例模式。单例模式可以减少类的实例化代码:来源InitPHP框架,先检测类有没被实例化,实例化了就使用已经存放在静态变量中的对象实例,没有则实例化并将对象保存起来。 /** ...
分类:
Web程序 时间:
2015-04-10 15:10:06
阅读次数:
108
场景:有一tengine的反向代理,主要反向代理到几个后端服务器上,后端服务器提供数千万的图片文件,众所周知的原因,图片是很容易被盗链的,而使用refer来反盗链的话,一是可以伪造refer,另一个是众多合作网站需要来调用图片,需要手动添加refer,因此决定使用nginx_accesskey..
分类:
数据库 时间:
2015-04-10 07:07:55
阅读次数:
233
作为Android开发的组成部分,多线程的作用举足轻重,先来说说应用场景1多线程使用场景1.1正常使用中,经常有子线程来更新界面UI的需求,但是安卓不允许子线程更新UI使用子线程处理UI,若线程需要较长的时间,势必造成UI没有反应,从而导致程序ANR(Application is not respo...
分类:
移动开发 时间:
2015-04-10 06:32:38
阅读次数:
187
把多张图片摆放到屏幕任何位置并保存成文件,下次打开时恢复之前的状态!一般使用场景:经常要看的图片,比如说软件快捷键、库的API、英文生词、常用配色等等摆好在屏幕上以便查看和记忆。用PS等画画、设计、调照片时,常常会有好几个版本都不错的情况,这时候可以先复制,然后CMD+V粘贴到PinPhoto,然后...
分类:
其他好文 时间:
2015-04-09 21:17:45
阅读次数:
155
在工作当中,我们会常常见到像UC浏览器的新选项卡一样的可以自定义拖拽摆放效果。大的像淘宝的装修,QQ空间装扮等,小到一些游戏等等随处可见拖放的使用场景。
在 HTML5 中,拖放是标准的一部分,任何元素都能够拖放。
拖放是一种常见的特性,即抓取对象以后拖到另一个位置。
目前浏览器支持情况:Internet Explorer 9、Firefox、Opera 12、Chrome 以及 Saf...
分类:
Web程序 时间:
2015-04-09 17:29:28
阅读次数:
148