NodeJS 常见设计模式

设计模式 同时被 2 个专栏收录
1 篇文章 0 订阅
1 篇文章 0 订阅
/**
 * @event  nodejs常见设计模式
 */



/**
 * @event  单一职责(一个对象或方法只做一件事情)
 * @description
 * 一个对象或方法只做一件事情。
 * 如果一个方法承担了过多的职责,那么在需求的变迁过程中,需要改写这个方法的可能性就越大。
 * 应该把对象或方法划分成较小的粒度。
 */

 //团队
class Team {
    getTeamAll() {

    }
    getTeamById() {

    }
};

//用户
class User {
    getUserAll(){

    }
    getUserById(){

    }
}

//部门
class Department{
    getDepartmentAll(){

    }
    getDepartmentById(){

    }
}

/**
 * @event   适配器模式(继承)
 * @description
 * 代码共享,减少创建类的工作量,每个子类都拥有父类的方法和属性
 * 提高代码重用性
 * 提高代码的扩展性等
 */

 class Master{
     constructor(){
         this.name = "master";
         this.age = 22;
     }
     
     method(){
         return "master=>method"
     }
 }

 class Slave extends Master{
    constructor(){
        super();
    }
    slaveMethod(){
        this.name = "slave";
        console.log(this.name, master.name, this.method());
    }
    method(){
        return "slave=>method"
    }
 };
 new Slave().slaveMethod();

/**
 * @event  开放封闭原则
 * @description
 * 当需要改变一个程序的功能或者给这个程序增加新功能的时候,
 * 可以使用增加代码的方式,尽量避免改动程序的源代码,防止影响原系统的稳定.
 * 如果不遵守开放封闭原则,更改源码,则很可能出现更多的bug
 */

 /**
  * @event 中间件/管道(middleware)
  * 一个功能单元的输出是下一个功能单元的输入
  * 比如express的next向下执行,这期间就维护着一个中间件队列
  */

  /**
   * @event  装饰者模式(抽象方法)
   * @description
   * 原有方法维持不变,在原有方法上再挂载其他方法来满足现有需求;
   * 函数的解耦,将函数拆分成多个可复用的函数,
   * 再将拆分出来的函数挂载到某个函数上,实现相同的效果但增强了复用性
   */
  • 0
    点赞
  • 0
    评论
  • 1
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 深蓝海洋 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值