开启前端系列之设计模式(TS)
设计模式无关何种语言,可以使代码具有可扩展性、可复用性,减少冗余
最近要对项目进行重构,因此结合typescript复习一下设计模式,增加代码健壮性
【8月开启的新篇章】将会结合codepen和mermaid 流程图
7大原则演化为23种设计模式
单一职责原则
一个类只负责一件事
接口隔离原则
一个类对另一个类的依赖建立在最小接口上
依赖倒置原则
细节依赖抽象,面向接口编程
里氏替换原则
子类不要重写父类方法
开闭原则
对扩展开放,对修改关闭
迪米特法则
只与直接对象/组件通信
合成复用原则
优先使用组合或者聚合关系复用,少用继承关系复用
创建型模式
创建对象,抽象实例化对象的过程,只需使用不用关注逻辑
单例模式、简单工厂模式、工厂方法模式、抽象模式、原型模式、建造者模式
结构型模式
组装现有的类,设计交互方式,实现某些功能
适配器模式、桥接模式、装饰着模式、组合模式、外观模式、享元模式、代理模式
行为型模式
不同的对象之间划分责任,算法抽象化,不仅仅关注类和对象的结构,更重要的是相互作用,划分类与对象的职责,实现合理的交互
模板方法模式、命令模式、访问者模式、迭代器模式、观察者模式、中介者模式、备忘录模式、解释器模式、状态模式、策略模式、职责链模式