23种设计模式(Java案例)

                                                   前言



                                                            设计模式核心思想

  • 高内聚, 低耦合
  1. 可扩展性: 方便迭代新功能;
  2. 可靠性: 迭代功能后不会影响已有功能;
  3. 可读性: 编程规范, 方便同事阅读理解;
  4. 代码重用性: 不编写相同代码;
  • 设计模式遵循的七大原则
  1. 单一职责
    1. 思想: 执行者只做一件事;
    2. 案例: Dao层里的一个订单mapper只做订单表的相关的事, 但这个mapper里同时又操作了用户表就违背了单一              职责的思想;
    3. 违背   遵循  
  2. 接口隔离
    1. 思想: 按方法用途将单个接口拆分成多个接口, 使类实现接口只实现, 类想用到的方法;
    2. 违背   遵循 
  3. 依赖倒转(面向接口编程)
    1. 思想: 调用方由调用提供者的底层类, 转换成调用提供者的顶层接口/抽象类, 提供者传递实现类/子类到接口/抽象类, 实现多态动态加载;
    2. 案例: 方法中之前调用的是实现类, 用依赖倒转后将调用实现类改为调用接口;
    3. 违背   遵循  
  4. 里氏替换
    1. 思想: 子类不要重写父类方法, 子类和父类继承基类实现逻辑解耦;
    2. 案例:  eat()只有父类有, 但开发中子类不小心写了一个与父类相同名字的eat()(无意识重写方法), 在用子类对象调用父类的eat()时, 调用的却是子类重写后的方法;
    3. 违背  遵循 
  5. 迪米特法则
    1. 思想: 最少知道法则, 调用方无需知道被调用对象的具体实现细节,被调用的对象对外只提供访问功能的方法;
    2. 拓展
      1. 直接朋友: 本类的参数, 方法返回值, 成员变量;
      2. 其他朋友: 出现在本类的局部方法中与本类不相关的局部变量;
    3. 违背     遵循 
  6. 开闭原则(OCP原则)
    1. 思想: 提供方修改代码后不应该改动调用方的代码;
    2.   违背             遵循 
  7. 合成复用
    1. 思想: 要想使用其他类的方法, 要用组合/聚合的方式, 而不是用继承的方式实现;
    2. 组合: 外部类对象随本类的实例而实例, 外部类对象以成员属性的方式存在(和本类同生死);
    3. 聚合: 外部类对象通过赋值的方式在本类中进行实例(外部对象聚集合并到本类);
    4. 依赖: 本类使用到外部类就表示本类依赖调用了外部类;
    5. 说明     

                                                            UML类图

  • 画类图
  • 描述一个类
  • 线性说明
  • 练习
  1.           

                                                             学习期间使用到的工具


                                                              设计模式有3类

  • 创建型
  1. 单例模式
  2. 工厂模式
  3. 抽象工厂模式
  4. 原型模式
  5. 建造者模式
  • 结构型
  1. 适配器模式
  2. 桥接模式
  3. 装饰者模式
  4. 组合/部分整体模式
  5. 外观模式
  6. 享元/蝇量模式
  7. 代理模式
  • 行为型
  1. 模版模式
  2. 命令模式
  3. 访问者模式
  4. 策略模式
  5. 迭代器模式
  6. 观察者模式
  7. 中介者模式
  8. 备忘录模式
  9. 解释器模式
  10. 状态模式
  11. 责任链模式

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章