代码改变世界

随笔档案-2014年08月

读书笔记之 - javascript 设计模式 - 代理模式

2014-08-28 14:46 by sai.zhao, 948 阅读, 收藏,
摘要: 代理(proxy)是一个对象,它可以用来控制对另一对象的访问。它与另外那个对象实现了同样的接口,并且会把任何方法调用传递给那个对象。另外那个对象通常称为本体。代理可以代替本体被实例化,并使其可被远程访问。它还可以把本体的实例化推迟到真正需要的时候,对于实例化比较费时的本体,或者因为尺寸较大以至于不用... 阅读全文

读书笔记之 - javascript 设计模式 - 享元模式

2014-08-26 16:36 by sai.zhao, 956 阅读, 收藏,
摘要: 本章探讨另一种优化模式-享元模式,它最适合于解决因创建大量类似对象而累及性能的问题。这种模式在javascript中尤其有用,因为复杂的javascript代码很快就会用光浏览器的所有可用内存,通过把大量独立对象转化为少量共享对象,可以降低运行web应用程序所需的资源数量。享元模式用于减少应用程序所... 阅读全文

读书笔记之 - javascript 设计模式 - 装饰者模式

2014-08-21 11:37 by sai.zhao, 332 阅读, 收藏,
摘要: 本章讨论的是一种为对象增添特性的技术,它并不使用创建新子类这种手段。装饰者模式可以透明地把对象包装在具有同样接口的另一对象之中,这样一来,你可以给一些方法添加一些行为,然后将方法调用传递给原始对象。相对于创建子类来说,使用装饰者模式对象是一种更灵活的选择。装饰者可用于为对象增加功能。它可以用来替代大... 阅读全文

读书笔记之 - javascript 设计模式 - 适配器模式

2014-08-18 11:09 by sai.zhao, 810 阅读, 收藏,
摘要: 适配器模式可以用来在现在接口和不兼容的类之间进行适配。使用这种模式的对象又叫包装器,因为他们是在用一个新接口包装另一个对象。在设计类的时候往往遇到有些接口不能与现有api一同使用的情况,借助于适配器,你可以不用直接修改这些类也能使用他们。适配器的特点:适配器可以被添加到现有代码中以协调俩个不同的接口... 阅读全文

读书笔记之 - javascript 设计模式 - 门面模式

2014-08-14 09:59 by sai.zhao, 474 阅读, 收藏,
摘要: 门面模式有俩个作用:简化类的接口消除类与使用它的客户代码之间的耦合在javascript中,门面模式常常是开发人员最亲密的朋友。它是几乎所有javascript库的核心原则,门面模式可以使库提供的工具更容易理解。使用这种模式,程序员可以间接地与一个子系统打交道,与直接访问子系统相比,这样做更不容易出... 阅读全文

读书笔记之 - javascript 设计模式 - 工厂模式

2014-08-12 10:58 by sai.zhao, 291 阅读, 收藏,
摘要: 一个类或者对象中,往往会包含别的对象。在创建这种对象的时候,你可能习惯于使用常规方式,即用 new 关键字和类构造函数。这会导致相关的俩个类之间产生依赖。工厂模式,就是消除这俩个类之间的依赖性的一种模式,它使用一种方法来决定究竟实例化那个具体的类。简单工厂模式假设你想开几个自行车商店,每个商店都有几... 阅读全文

读书笔记之 - javascript 设计模式 - 单体模式

2014-08-11 11:11 by sai.zhao, 222 阅读, 收藏,
摘要: 单体是一个用来划分命名空间,并将一批相关方法和属性组织在一起的对象,如果它可以被实例化,那么它只能被实例化一次。单体模式,就是将代码组织为一个逻辑单元,这个逻辑单元中的代码可以通过单一的变量进行访问。单体基本结构是这样:var Singleton = { attribute1:true, ... 阅读全文

读书笔记之 - javascript 设计模式 - 组合模式

2014-08-07 16:24 by sai.zhao, 152 阅读, 收藏,
摘要: 组合模式是一种专为创建Web上的动态用户界面而量身定制的模式,使用这种模式,可以用一条命令在对各对象上激发复杂的或递归的行为。在组合对象的层次体系中有俩种类型对象:叶对象和组合对象。这是一个递归定义,但这正是组合模式如此有用的原因所在。一个组合对象由一些别的组合对象和叶对象组成,其中只有叶对象不再包... 阅读全文