This website requires JavaScript.

设计模式

设计模式在 TypeScript 中的应用 - 中介者模式

定义:当一个系统中对象之间的关系呈下图所示的网状结构的关系时,一个对象会影响到其他对象,同时也会受到其他对象的影响。这将会导致一个过渡耦合的系统。中介者模式即是使用一个中介对象,来封装一系列对象的交互,中介者使各对象不需要显示的相互引用,从而使其耦合松散。

2018.01.27 643 次阅读 5 条评论

设计模式在 TypeScript 中的应用 - 责任链模式

假设有一个请假的例子,约定如下: - 请假 1 天时,需由部门副经理审批。 - 请假 2 - 3 天时,需由部门经理审批。 - 请假 4 - 5 天时,需有公司副总经理审批。 - 请假 5 天以上时,需由公司总经理审批。

2018.01.13 564 次阅读 0 条评论

设计模式在 TypeScript 中的应用 - 享元模式

思路: 存在大量对象时,把其中共同部分抽离出来,如果有相同的业务请求,直接返回内存中已有对象; 需区分内部状态和外部状态: - 内部状态存储在享元对象内部,可以共享。 - 外部状态随环境改变,不可以共享。享元对象的外部状态由客户端保存,在被享元对象创建以后,在需要使用时,再传入享元对象内部。

2018.01.07 589 次阅读 5 条评论

设计模式在 TypeScript 中的应用 - 模板模式

在 TypeScript 继承代码中,模板模式比较常用。 定义 一个抽象类,公开定义它的方法和模板,由子类按需重写方法实现。 实现 思路: - 抽象类实现模版方法; - 子类实现继承,按需修改;

2018.01.05 616 次阅读 4 条评论

设计模式在 TypeScript 中的应用 - 组合模式

定义 组合模式用于表示具有层次结构的数据,使得我们对单个对象和组合对象的访问具有一致性。 这种模式创建了一个包含自己对象组的类。该类提供了修改相同对象组的方式。

2018.01.02 489 次阅读 4 条评论

设计模式在 TypeScript 中的应用 - 命令模式

定义 将请求封装成对象,从而使你可用不同的请求对客户进行参数化。 实现 思路: - command 命令; - received 接收者,真正执行命令的对象; - invoker 调用者,使用命令对象的入口。

2017.12.23 503 次阅读 3 条评论

设计模式在 TypeScript 中的应用 - 观察者模式

定义 当一个对象的状态发生改变时,所有依赖于它的对象都将得到通知。 实现 思路: - 指定发布者; - 给发布者添加一个缓存列表,用于存放回调函数以便通知订阅者; - 最后发布消息的时候,发布者会遍历这个缓存列表,依次触发里面存放的订阅者回调函数。

2017.12.21 417 次阅读 0 条评论

设计模式在 TypeScript 中的应用 - 代理模式

定义 代理模式是为一个对象提供一个代用品,或占位符,以便控制对它的访问。 实现 思路:把客户端真正调用的类和方法隐藏,只暴露代理类给客户端。

2017.12.20 382 次阅读 0 条评论

设计模式在 TypeScript 中的应用 - 策略模式

定义 定义一系列的算法,把它们一个个封装起来,并且使它们可以相互替换。 实现 思路:创建表示各种策略的对象,和一个行为随着策略对象改变而改变的 context 对象。

2017.12.18 317 次阅读 2 条评论

设计模式在 TypeScript 中的应用 - 单例模式

定义 只有一个实例,并提供全局访问。 实现 思路:用一个变量来标识当前是否已经为某个类创建过对象,如果是,则在下一次获取该类的实例时,直接返回之前创建的对象,否则返回新对象。

2017.12.16 405 次阅读 3 条评论
end