前端的设计模式(列举9种

设计模式

结构型模式
  1. 外观模式:为子系统中的一组接口提供一个统一的高层接口,使子系统更容易使用。
  2. 代理模式:如ES6的Proxy。 解决以下问题: 增加对一个对象的访问控制 当访问一个对象的过程中需要增加额外的逻辑 实现需要的条件: 真实对象 代理对象 接口
  3. 创建型模式 工厂模式:制造其他对象的对象,随着传入工厂对象参数的不同有所区别。提供一种集中化、统一化的方式,避免了分散创建对象导致的代码重复、灵活性差的问题。 用处:构造函数过多,不方便管理,且需要创建的对象之间存在某些关联。 单例模式:class的实例个数最多为1。当需要一个对象去贯穿整个系统执行某些任务的时候,用单例模式。 需要注意:除了以上这种使用场景外,尽量避免单例模式的使用,因为单例模式会引入全局状态,而系统应该避免引用过多的全局状态。 解决以下问题: 确定class只有一个实例 简便的访问class的唯一实例 class控制实例化过程 将class的实例个数限制为1 解决问题的方法: 隐藏class的构造函数,避免多次实例化 通过暴露一个getInstance()方法来创建/获取唯一的实例 实现的关键点: 使用IIFE创建局部作用域并立即执行 getInstance()作为一个闭包,使用闭包保存局部作用域中的单例对象并返回

本文完全参考思否上:,配有示例代码,写的特别清楚。

个人总结感悟:

设计模式无非就是在写代码过程中,对于某类问题的通用解决方案,主要是理解解决思想,减少冗余代码。

经验分享 程序员 微信小程序 职场和发展