2. 设计模式与架构

一、 设计模式

  • 创建型模式
    • 抽象工厂模式(AbstractFactory)、工厂模式(Factory)、创建者模式(Builder)、单例模式(Singleton)、原型模式(ProtoType)
  • 结构模式
    • 适配器模式(Adapter)、代理模式(Proxy)、享元模式(Flyweight)、外观模式(Facade)、装饰模式(Decorator)、桥接模式(Bridge)、组成模式(Compose)
  • 行为模式
    • 命令模式(Command)、解释器模式(Interpreter)、迭代器模式(Iterator)、观察者模式(Observer)、状态模式(State)、策略模式(Strategy)、模板方法模式(Template)、访问者模式(Visitor)、中介者模式(Mediator)、责任链模式(Chain of Responsibility)、备忘录模式(Memento)
      git项目地址:https://github.com/a11en-yang/design-pattern

1.1 创建型模式

  • 创建模式
    • 单例模式
    • 工厂模式
  • 设计模式
  • 行为模式
  1. 单例模式

单例对象(Singleton)是一种常见的设计模式,在Java应用中,单例对象能够保证在JVM中,该对象只有一个实例存在,这用的模式有几个好处

  • 某些类创建比较繁琐,对于一些大型的对象,这是一笔很大的开销。
  • 省去了new操作符,降低了系统内存的使用频率,减轻GC压力
  • 有些类比如交易所的核型引擎,控制着交易流程,如果该类可以创建多个的化,系统完全乱了。只有使用单例模式,才能保证核心交易服务器独立控制整个流程

单例模式

  • 懒汉模式,饿汉模式
    • 1 构造方法私有化
    • 2 在自己类中创建一个单例(懒汉模式是一出来就创建单例,而饿汉模式是需要时才创建)
    • 3 提供一个方法获取该实例对象

饿汉模式实现:

public class Singleton {
    private Singleton(){
    }
    private static Singleton instance = new Singleton();
    public static Singleton getInstance(){
        return instance;
    }
}

懒汉模式实现

public class Singleton {
    private Singleton(){
    }
    private static Singleton instance;
    public static Singleton getInstance(){
        if(instance == null){
            instance = new Singleton();
        }
        return instance;
    }
}

1.2. 结构模式

1.3. 行为模式

二、服务端常用架构

  1. 微服务架构
  2. 客户端-服务器模式
  3. 主从设备模式
  4. 管道-过滤模式
  5. 代理模式
  6. 点对点模式
  7. 事件总线模式
  8. 模型-视图-控制器模式
  9. 黑板模式
  10. 解释器模式

三、目录

目录
上一篇:1. java基础
下一篇:3. 算法与数据结构基础

你可能感兴趣的:(2. 设计模式与架构)