设计原则
最重要的思想:开放封闭原则
对扩展开放
对修改封闭
工厂模式
用一个工厂函数,创建一个实例,封装创建的过程。
class Foo { ... }
function factory(): Foo {
// 封装创建过程,这其中可能有很多业务逻辑
return new Foo(...arguments)
}
应用场景
- jQuery `$('div')` 创建一个 jQuery 实例
- React `createElement('div', {}, children)` 创建一个 vnode
单例模式
全局唯一的实例(无法生成第二个)
class SingleTon {
private static instance: SingleTon | null = null
private constructor() {}
public static getInstance(): SingleTon {
if (this.instance === null) {
this.instance = new SingleTon()
}
return this.instance
}
fn1() {}
fn2() {}
}
// const s1 = new SingleTon() // Error: constructor of 'singleton
本文探讨了前端开发中常见的设计模式,包括开放封闭原则、工厂模式、单例模式、代理模式、观察者模式、发布订阅模式和装饰器模式。讲解了它们的应用场景,如jQuery的实例创建、Vuex的store、Vue3的响应式实现,以及在事件绑定和面向切面编程中的应用。同时,区分了观察者模式和发布订阅模式的主要区别。
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



