我在做技术面试过中如果遇到感觉还行的人,我都会问问你都会什么设计模式。回答的90%是单例模式和工厂模式,这不算是个满意的答案。
面试官常问的设计模式到底指什么?在技术领域中,这其实是非常明确的。GOF 23 设计模式,这就是标准答案。
23中设计模式分为三大类:
创建型模式
- 工厂方法
- 抽象工厂
- 单例模式
- 构建者模式
- 原型模式
结构型模式
- 适配器模式
- 装饰模式
- 代理模式
- 外观模式
- 桥接模式
- 组合模式
- 享元模式
行为型模式
- 策略模式
- 模板模式
- 观察者模式
- 迭代器模式
- 职责链模式
- 命令模式
- 备忘录模式
- 状态模式
- 访问者模式
- 中介这模式
- 解析器模式
spring框架都用了哪些设计模式?
BeanFactory就是工厂设计模式,bean本身有scope属性,模式就是用单例模式模式加载数据。常用的AOP实现就涉及到代理模式。数据访问JDBC隔离了不同数据库底层的实现,这里面涉及到装饰模式,适配器模式。一般做socket通信,都会引入命令模式。
带着设计模式去阅读spring源码,你会发现到处都是设计模式。
网友评论