工作中用到的设计模式

人工智能,零基础入门!http://www.captainbed.net/inner

1、单例模式

Spring容器中的 bean默认就是单例的

2、桥接模式

JDBC连接数据库

3、代理模式

spring的Proxy模式在aop中有体现

4、观察者模式

定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。
spring中Observer模式常用的地方是listener的实现。如ApplicationListener。发布者-订阅者模式,接受通知。

5、工厂模式

分为三种:简单工厂,工厂方法,抽象工厂 
根据“需求”生产“产品”,解耦“需求”“工厂”和“产品”。

简单工厂:通过构造时传入的标识来生产产品,不同产品都在同一个工厂中生产,每新增加一种产品,需要改工厂类,来判断,这种判断会随着产品的增加而增加,给扩展和维护带来麻烦 
简单工厂项目案例:根据传入的 不同(比如1对应支付流水,2 对应订单流水),生成不同类型的流水号

工厂方法:(使一个类的使用延迟到子类) 
其中的工厂类根据传入的A.class类型,反射出实例。 
产品接口,产品类A,产品类B,工厂类可以生成不同的产品类对象,如果要随着产品的增加而增加,工厂类不变,只需新增一个产品类C即可。 
项目案例:邮件服务器,有三种协议,POP3,IMAP,HTTP,把这三种做完产品类,在定义个工厂方法

抽象工厂:一个工厂生产多个产品,它们是一个产品族,不同的产品族的产品派生于不同的抽象产品

6、。。。。等等
 

你可能感兴趣的:(Java,项目开发,个人学习,设计模式)