• 文章目录 外观模式 外观模式 外观模式是为了解决类与类之家的依赖关系的 像spring一样 可以将类和类之间的关系配置到配置文件中 而外观模式就是将他们的关系放在一个Facade类中 降低了类类之间的耦合度 该模式中没有涉及到接口 看下类图
  • Inline Class 某个类并没有做太多的事情 应该将这个类的所有特性搬移到另一个类中 然后移除原类 过程与Extract Class相反 不再做介绍 Hide Delegate 客户通过一个委托关系来调用另一个对象 应当在服务类上建立
  • 文章目录 桥接模式 桥接模式 桥接模式就是把事物和其具体实现分开 使他们可以各自独立的变化 桥接的用意是 将抽象化与实现化解耦 使得二者可以独立变化 像我们常用的JDBC桥DriverManager一样 JDBC进行连接数据库的时候 在各个
  • 文章目录 中介者模式 Demo 中介者模式与观察者模式区别 中介者模式 中介者模式也是用来降低类类之间的耦合的 因为如果类类之间有依赖关系的话 不利于功能的拓展和维护 因为只要修改一个对象 其它关联的对象都得进行修改 如果使用中介者模式 只
  • 文章目录 UML类图 泛化 generalize 与实现 realize 聚合 aggregation 与组合 composition 关联 association 与依赖 dependency 23种设计模式 创建型模式 结构型模式 行为
  • 文章目录 介绍状态模式 状态模式 介绍状态模式 核心思想就是 当对象的状态改变时 同时改变其行为 也就是行为由其状态决定 介绍 意图 允许对象在内部状态发生改变时改变它的行为 对象看起来好像修改了它的类 主要解决 对象的行为依赖于它的状态
  • 文章目录 为什么要有建造者模式 建造者模式 为什么要有建造者模式 工厂类模式提供的是创建单个类的模式 而建造者模式则是将各种产品集中起来进行管理 用来创建复合对象 所谓复合对象就是指某个类具有不同的属性 建造者模式与工厂模式的区别 工厂模式
  • 文章目录 备忘录模式 备忘录模式 主要目的是保存一个对象的某个状态 以便在适当的时候恢复对象 个人觉得叫备份模式更形象些 通俗的讲下 假设有原始类A A中有各种属性 A可以决定需要备份的属性 备忘录类B是用来存储A的一些内部状态 类C呢 就
  • 重构方法有很多 但是只要满足以下条件 怎么重构都是合理的 原则一 SRP Single responsibility principle 单一职责原则又称单一功能原则 核心 解耦和增强内聚性 高内聚 低耦合 描述 类被修改的几率很大 因此应
  • 何谓重构 目的在于不改变软件可观察行为的前提下 提高其可理解性 降低其修改成本 重构可能会在软件内部做修改 但是对软件的外部行为造成很小改变 或者不造成改变 与之相比的是性能优化 为何重构 程序的设计会逐渐腐败 当人们只为了短期目的 或者未
  • 我们都知道 类往往因为承担过多的责任而变得臃肿不堪 这种情况下 一般会使用 提炼类 这种手法将一部分责任分离出去 如果一个类变得 不负责任 一般会使用 内联类 这种手法将它融入另一个类 如果一个类使用了另一个类 一般会运用 隐藏委托关系 手
  • 文章目录 命令模式 命令模式 命令模式很好理解 举个例子 司令员下令让士兵去干件事情 从整个事情的角度来考虑 司令员的作用是 发出口令 口令经过传递 传到了士兵耳朵里 士兵去执行 这个过程好在 三者相互解耦 任何一方都不用去依赖其他人 只需
  • 文章目录 为什么要用单例模式 单例模式 饿汉式 DCL 静态内部类 为什么要用单例模式 单例对象 Singleton 是一种常用的设计模式 在Java应用中 单例对象能保证在一个JVM中 该对象只有一个实例存在 这样的模式有几个好处 某些类
  • 文章目录 介绍适配器模式 类适配器模式 对象的适配器模式 接口的适配器模式 介绍适配器模式 适配器主要用于接口的转换或者将接口不兼容的类对象组合在一起形成对外统一接口 是一种结构性模式 其本质是是一个中间件 适用于类及其对象 原理 通过继承
  • 文章目录 责任链模式 深入讲解责任链模式拆分代码 场景 责任链模式 责任链模式 有多个对象 每个对象持有对下一个对象的引用 这样就会形成一条链 请求在这条链上传递 直到某一对象决定处理该请求 但是发出者并不清楚到底最终那个对象会处理该请求