设计模式
文章平均质量分 86
billfeller
https://github.com/billfeller
展开
-
《Javascript设计模式》读书笔记——单体模式
单体对象都是在脚本加载时被创建出来。如下代码:var Singleton = (function() { // 普通的单体模式 // code here return { };})();而对于资源密集型的或配置开销甚大的单体,也许更合理的做法是将其实例化推迟到需要使用它的时候。这种技术被称为“惰性加载(lazyloading)”,它最常用于那些必须加载大量原创 2012-09-19 16:31:55 · 687 阅读 · 0 评论 -
MVC模式
转自:维基百科,自由的百科全书MVC模式(三层架构模式)(Model-View-Controller)是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model)、视图(View)和控制器(Controller)。MVC模式最早由Trygve Reenskaug在1974年[1]提出,是施乐帕罗奥多研究中心(Xero转载 2012-10-27 18:48:45 · 1553 阅读 · 0 评论 -
JS实现策略模式
作者:zhanhailiang 日期:2012-10-24基本概念介绍策略模式支持你在运行时选择算法。代码的客户端可以使用同一个接口来工作。但是它却根据客户正在试图执行任务的上下文,从多个算法中选择用于处理特定任务的算法。使用策略模式的其中一个例子是解决表单验证问题。可以创建一个具有validate()方法的验证器(validator)对象。无论表单的具体类型是什么原创 2012-10-25 09:15:27 · 1301 阅读 · 1 评论 -
JS实现命名空间
作者 : zhanhailiang 日期 : 2012-10-24在添加一个属性或者创建一个命名空间之前,最好是首先检查它是否已经存在,如下例:if(typeof HWSL === "undefined") { var HWSL = {};} //或者使用||的短路功能var HWSL = HWSL || {};但是这些附加的检查会迅速产生大量重复的代码。如原创 2012-10-23 22:26:27 · 798 阅读 · 0 评论 -
js实现命名空间
作者 : zhanhailiang 日期 : 2012-10-24在添加一个属性或者创建一个命名空间之前,最好是首先检查它是否已经存在,如下例:if(typeof HWSL === "undefined") { var HWSL = {};} //或者使用||的短路功能var HWSL = HWSL || {};但是这些附加的检查会迅速产生大量重复的代码。如原创 2012-10-25 09:18:28 · 126 阅读 · 0 评论 -
php设计模式之单例模式
转自:http://hi.baidu.com/jeakccc/blog/item/3951205d8fa98955faf2c041.html单例模式的要点有三个:一.是某个类只能有一个实例;二.是它必须自行创建这个实例;三.是它必须自行向整个系统提供这个实例。 /* 单例模式举例,其要点如下: * * 1. $_instance 必须声明为静态的私有变量转载 2012-05-09 18:51:40 · 610 阅读 · 0 评论 -
设计模式学习总结-策略模式(Strategy Pattern)
设计模式学习总结-策略模式(Strategy Pattern)问题:当我们定义一系列的算法,怎么能使得算法为应对不同的业务需要能自由的动态替换而又不影响到客户端的使用,并且算法的增减、修改都不会影响环境和客户端。定义:策略模式定义了一系列算法,把它们一个个封装起来,并且使它们可相互替换。该模式可使得算法能独立于使用它的客户而变化。意图: Strategy模式是行为模式,转载 2012-06-26 19:22:21 · 599 阅读 · 0 评论 -
设计模式学习笔记(十三)——Proxy代理模式
Proxy代理模式是一种结构型设计模式,主要解决的问题是:在直接访问对象时带来的问题,比如说:要访问的对象在远程的机器上。在面向对象系统中,有些对象由于某些原因(比如对象创建开销很大,或者某些操作需要安全控制,或者需要进程外的访问),直接访问会给使用者或者系统结构带来很多麻烦,我们可以在访问此对象时加上一个对此对象的访问层。如下图: 比如说C和A不在一个服务器上,转载 2012-06-26 18:55:39 · 600 阅读 · 0 评论 -
谈谈MVC模式
作者: 阮一峰日期: 2007年11月 8日1.如何设计一个程序的结构,这是一门专门的学问,叫做"架构模式"(architectural pattern),属于编程的方法论。MVC模式就是架构模式的一种,它对我的启发特别大。我觉得它不仅适用于开发软件,也适用于其他广泛的设计和组织工作。下面是我对MVC模式的一些个人理解,不一定正确,主要用转载 2012-08-21 16:26:01 · 967 阅读 · 0 评论 -
JS实现观察者模式
作者:zhanhailiang 日期:2012-10-24基本概念介绍观察者(observer) 模式广泛用于客户端Javascript编程中。所有的浏览器事件都是该模式的例子。它的另一个名字也称为自定义事件(custom events),与那些由浏览器触发的事件相比,自定义事件表示是由你编程实现的事件。此外,该模式的另一个别名也称为订阅/发布(subscriber/pub原创 2012-10-25 09:13:52 · 1263 阅读 · 2 评论