美文网首页
head first 设计模式(一)

head first 设计模式(一)

作者: 开发小白宋大喵 | 来源:发表于2020-04-10 18:43 被阅读0次

    设计模式是程序员之间的共享词汇

    • 良好的面向对象设计必须具有可复用、可扩充、可维护三个特性
    • 大多数的模式和原则,都是着眼于软件变化的

    设计原则一:抽取代码

    1.需要改变的代码抽出来,所以他们的改变可以不影响其他代码
    2.抽出来的代码如果面向接口编程,可以把它们独立于之前的超类,也就是说抽出来的代码已经不特定服务于某一超类,代码的复用效果更好

    设计原则二:面向接口编程

    1.抽出的代码作为接口的特定实现类,基类可以动态改变
    2.针对“超类型”接口编程:变量的声明类型为超类型。这就意味着具体实现超类的对象都可以指定为该变量。
    3.父类声明时用抽象类声明,子类中实例化的时候实例具体的子类
    4.可以用set方法实现动态化(重新实例化所要调用的对象)->即在运行时改变状态

    设计原则三:多用组合,少用继承

    策略模式:

    定义了 - 算法族-,分别 - 封装- 起来 ,让他们之间可以 - 互相替换-,此模式让算法的变化独立于使用算法的客户

    优点
    • 策略分离,易于扩展和维护
    • 策略可以自由切换
    • 避免条件判断
    缺点
    • 策略需要都暴露出去
    • 每个策略都是一个类,复用率不高

    相关文章

      网友评论

          本文标题:head first 设计模式(一)

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