美文网首页
极客时间第3天打卡

极客时间第3天打卡

作者: 随手点灯 | 来源:发表于2020-03-30 17:00 被阅读0次

    今天学习了争哥的行为型设计模式.

    观察者设计模式:
    同步的,异步的,同一个进程的,不同进程之间都可以用到观察者模式.
    实现业务之间的解耦.
    我在日常开发中经常用到观察者设计模式.
    @Autowired直接注入
    本质上观察者设计模式是一种面向接口编程的思维模型

    模板设计模式:
    在一个模板类中定义好骨架内容,写好主要的流程代码,关键内容提供抽象方法让子类实现,可以给模板方法加上final修饰符进行修饰避免重写
    与模板设计模式相关有一个回调函数的功能.
    A类首先往B类注册f函数,然后A类调用B类的b方法,b方法中回调f函数.
    如果这个f函数是同步的,那么回调函数有点像是模板方法,如果f函数是异步的,又有点像是观察者设计模式.

    策略模式:
    策略模式一组策略的创建,使用,获取的模式,通常有一个策略工厂,是面向接口编程的典范.
    比如我用到的消息推送可以使用钉钉告警或普通接口告警,可以采用策略模式

    职责链模式:
    职责链模式也是采用买内向接口编程的思想.
    有两种实现方式,一种是链式的数据模型,servletFilter是采用这种模式
    还有一种是数组的方式,直接遍历数组调用职责链.
    关于职责链有两种变种,一种是只要有一个职责链节点完成了任务,就返回,还有一种是每个职责链都进行工作,

    状态模式:
    状态模式是用来解决状态的转换的问题.
    首先要画好状态转换图.
    其实我接触到的项目中监控项目可以用到状态转换模式,具体还是需要再复习下.

    今天意识到了一点其实我们要运用设计思想和设计原则去编程,而不是对设计模式进行死记硬背.如果不能良好的运用设计思想和设计原则,只是对代码进行设计模式的生搬硬套.

    可能会增加代码的偶然复杂性.变得更加不好维护.

    相关文章

      网友评论

          本文标题:极客时间第3天打卡

          本文链接:https://www.haomeiwen.com/subject/spvyuhtx.html