AOP是对OOP的补充,横向切入对象并进行逻辑注入,确保类的职责单一
分类目录归档:Design_Pattern
自己理解前端MV*
说MV*的文章很多,但要弄明白搞清楚谁对谁错可不容易,本文详细解释笔者看过很多篇博文后自己对MV*的理解
享元模式_JavaScript设计模式12
享元(flyweight)模式是用来减少内存消耗的,从一堆相似对象中提取出可共享的属性,以减少相似对象的数量。本文详细介绍JavaScript实现的享元模式
装饰者模式_JavaScript设计模式11
装饰者模式的核心是“包裹”,提供多个可选的装饰类型,给初始类型对象包裹需要的装饰类型即可扩展初始类型的功能,避免出现类型大爆炸。本文详细介绍JS实现的装饰者(Decorator)模式
Mixin模式_JavaScript设计模式10
Mixin模式可以实现多重继承,可以把Mixin对象当做一个个零件仓库,可以直接把零件仓库里的零件给现有对象装上,能够方便地复用代码、增强现有对象。本文详细介绍JavaScript实现的Mixin模式
工厂模式_JavaScript设计模式9
工厂模式,顾名思义,是用来创建对象的,负责封装复杂的对象创建过程,提供简单的功能入口。本文详细介绍JavaScript实现的工厂模式
外观模式_JavaScript设计模式8
外观模式,与前面介绍过的命令模式很相像,本文详细介绍JavaScript实现的外观模式
命令模式_JavaScript设计模式7
经典命令模式的实现需要请求者、命令、执行者,看起来很庞大,主要是因为强制类型检查带来的不便(必须依靠抽象类型来保证接口的统一),而JS是弱类型的,很容易实现命令模式,本文详细介绍JavaScript实现的命令模式
原型模式_JavaScript设计模式6
原型模式,也就是道格拉斯的生孩子(beget)方法,以现有对象为原型,创建新对象,类似于继承,但更像复制。本文详细介绍JavaScript实现的原型模式
中介者模式_JavaScript设计模式5
中介者模式与发布/订阅模式非常像,算是对发布/订阅模式的进一步增强(层级结构),同时也增加了一些限制(必须通过中介交互),本文详细介绍JavaScript实现的中介者模式
观察者模式_JavaScript设计模式4
最经典的观察者模式应用就是事件机制了,本文详细介绍用JS如何实现观察者模式和与之类似的发布订阅模式
单例模式_JavaScript设计模式3
Singleton(单例)模式在JS中实现起来非常简单,如果不考虑依赖注入,用对象字面量方式创建的对象就是单例,本文详细介绍JS中的单例模式
模块模式_JavaScript设计模式2
所谓Module(模块)模式,其实是一种针对JS的封装思想,很多语言提供了访问控制机制(public, private等等),但JS没有,所以才有了模块模式
构造器模式_JavaScript设计模式1
构造器模式是《JavaScript设计模式》一书中介绍的第一个模式,内容很单薄,对书有些失望。不过没关系,我们可以参考别的东西丰富这块内容
设计模式总结(《Head First设计模式》学习总结)
耗费一个半月时间细细读完了《Head First设计模式》,本文将对书中介绍到的所有模式作以总结。虽然现阶段的工作大多是围绕“实现”的,但个人认为在陷入“编码”的漩涡之前有必要了解一些“设计”相关的东西,这些思想与理论会慢慢的影响我们的代码和思维。