架构师训练营 week3 - 学习总结
本周主要对设计模型的整体学习及几个常用设计模式的概念,应用场景,优缺点及模式之间的对比。重点对在Junit, Spring中使用到的设计模型进行了案例的分析及讲解,让我们对设计模型的应用场景有了更深入的理解。
设计模式的定义:
每一种设计模式都描述了一种问题的通用解决方案。
设计模式是一种可重复使用的解决方案。
设计模式的四个部分:
模式的名称:由少量的字组成的名称,有助于我们表达我们的设计
待解问题:描述了何时需要运用这种模式,以及运用模式的环境(上下文)
解决方案:描述了组成设计的元素(类和对象),它们的关系、职责以及合作。但这种解决方案是抽象的,它不代表具体的实现
结论:运用这种方案所带来的利和弊。主要是指它对系统的弹性、扩展性和可移植性的影响。
设计模式介绍:
单例模式
单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。
这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建。这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需要实例化该类的对象。
注意:
1、单例类只能有一个实例。
2、单例类必须自己创建自己的唯一实例。
3、单例类必须给所有其他对象提供这一实例。
适配器模式
适配器模式(Adapter Pattern)是作为两个不兼容的接口之间的桥梁。这种类型的设计模式属于结构型模式,它结合了两个独立接口的功能。
装饰器模式
装饰器模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其结构。这种类型的设计模式属于结构型模式,它是作为现有的类的一个包装。
组合模式
组合模式(Composite Pattern),又叫部分整体模式,是用于把一组相似的对象当作一个单一的对象。组合模式依据树形结构来组合对象,用来表示部分以及整体层次。这种类型的设计模式属于结构型模式,它创建了对象组的树形结构。
外观模式
外观模式(Facade Pattern)隐藏系统的复杂性,并向客户端提供了一个客户端可以访问系统的接口。这种类型的设计模式属于结构型模式,它向现有的系统添加一个接口,来隐藏系统的复杂性。
评论