1、单例模式;主要用到缓存、或者去线程session。
2、工厂设计模式;主要用于类和被调用类之间的解耦。
3、代理模式:主要用于代理类对目标类进行业务外的增强。 有静态代理和动态代理。
4、命令模式:主要解决调用逻辑要到执行时才能确定,通过把逻辑封装到类(包括内部类),把类传递进去,调用不同的类执行的方法逻辑不通。调用者的调用方法里的参数为命令逻辑接口,这样才能接受实现了接口的不同方法。
5、策略模式:封装系列算法,然后可以调用的客户端选择不同的算法。1、首先定义算法接口,2、再次算法实现接口,3、算法调用类-》封装算法调用逻辑,传入不同算法类调用不同算法,返回算法调用结果给客户端。
6、适配器模式:主要解决目标到不同调用接口的转换,通过继承转换目标类,实现调用接口方法,在调用接口方法里调用目标类对得到的结果进行重新逻辑修改再按照调用接口方法输出。具体参考例子。
7、模板设计模式: 实现主体逻辑公用,细分逻辑分离。通过定义抽象类实现主体逻辑,具体细分逻辑定义为抽象方法由不同子类实现,子类继承抽象类,实现抽象方法。这样调用时通过调用父类的主体方法,主体方法逻辑再调用不同子类的细分逻辑,实现主体逻辑共用,细分逻辑分离。
8、观察者模式:
9、门面设计模式: 主要用于对外提供的service,将复杂的内部业务逻辑接口之间的调用进行封装为统一的具体接口方法对外发布。这样外部类只管调用,具体内部负责逻辑有service负责。