大前端晋级系列之-单一职责原则
摘要:The Single Responsibility Principle(单一职责SRP)有时候,开发人员设计接口的时候会有些问题,比如用户的属性和用户的行为被放在一个接口中声明。这就造成了业务对象和业务逻辑被放在了一起,这样就造成了这个接口有两种职责,接口职责不明确,按照SRP的定义就违背了接口的单一职责原则了按字面意思理解单一职责原则,就是功能要单一?A class should have only one reason to change所谓单一职责,就是一个设计元素只做一件事。什么是“只做一件事”?简单说就是少管闲事。现实中就是如此,如果要你专心做一件事情,任何人都有信心可以做得很出色。
阅读全文
posted @
2014-03-08 10:49
【艾伦】
阅读(1850)
推荐(5) 编辑
大前端晋级系列之-策略模式
摘要:谨代表自己的理解,有错误欢迎指出!因为有jQuery的源码分析系列,所以尽量走jQuery的设计风格,便于理解.为什么要使用策略模式?举个例子,企业或者个人都要纳税,但是不同的国家税点自然是不一样的,那么这个税点的计算的方式就会有很多了,如何有效的管理呢?可以采用策略模式,使用算法的责任和算法本身分割开来,委派给不同的对象管理。策略模式通常把一个系列的算法包装到一系列的策略类里面,作为一个抽象策略类的子类。简单的说:“准备一组算法,并将每一个算法封装起来,使得它们可以互换”。tom大叔的帖子有一套设计模式,关于策略模式讨论的颇为激烈http://www.cnblogs.com/TomXu/ar
阅读全文
posted @
2014-03-07 10:14
【艾伦】
阅读(2950)
推荐(6) 编辑
Jser 设计模式系列之面向对象 - 接口封装与继承
摘要:GOF在《设计模式》中说到:面向接口编程,而非面向实现编程鉴于此,这个概念可见一斑!JS却不像其他面向对象的高级语言(C#,Java,C++等)拥有内建的接口机制,以确定一组对象和另一组对象包含相似的的特性。所幸的是JS拥有强大的灵活性,这使得模仿接口特性又变得非常简单。那么到底是接口呢?接口概念:接口提供了一种用以说明一个对象应该具有那些方法的手段接口,为一些具有相似行为的类之间(可能为同一种类型,也可能为不同类型)提供统一的方法定义,使这些类之间能够很好的实现通信使用接口的优点:自我描述性,促进代码的重用明确一个类实现的方法,帮助其使用这个类稳定不同类之间的通信一个需求,需要多个部门协调合
阅读全文
posted @
2013-10-27 15:57
【艾伦】
阅读(2801)
推荐(9) 编辑
JavaScript 中介者模式与观察者模式有何不同?
摘要:http://addyosmani.com/resources/essentialjsdesignpatterns/book/#detailmvp感觉二者非常像,都是pub/sub机制,如何进行区分?分别在什么不同的场景中进行应用?在Obsever模式中, 不存在封装约束的单一对象。Observer 和 Subject 必须合作才能维持约束。Communication(通讯)模式由观察者和目标互联的方式决定:单一目标通常有很多观察者,有时一个目标的观察者是另一个观察者的目标Mediator 和 Observer 都能促进松耦合,然后Mediator 模式通过限制对象严格通过Mediator 进
阅读全文
posted @
2013-07-18 21:08
【艾伦】
阅读(5376)
推荐(2) 编辑