中介者模式和适配器模式有何不同?
时间: 2024-06-18 11:03:10 浏览: 14
中介者模式和适配器模式有以下两个不同点:
1.作用不同:适配器模式的作用是将一个类的接口转换成为客户端所期待的另一种接口,而中介者模式则是封装对象之间的交互,以便于对象之间的耦合度降低,减少对象之间的直接依赖关系。
2.关注点不同:适配器模式关注的是接口之间的转化,中介者模式关注的是对象之间的通信和协作方式。
相关问题
设计模式的看法和认知,有哪些设计模式?
设计模式是一套被反复使用的、多数人知晓的、经过分类编目的、代码设计经验的总结。设计模式的好处在于可以重用代码、让代码更容易被他人理解、保证代码可靠性。设计模式提供了一个标准的术语系统,且具体到特定的情景。合理地运用设计模式可以完美地解决很多问题,每种模式在现实中都有相应的原理来与之对应,每种模式都描述了一个在我们周围不断重复发生的问题,以及该问题的核心解决方案。根据参考书《Design Patterns - Elements of Reusable Object-Oriented Software》中所提到的,总共有23种设计模式,可以分为三大类:创建型模式、结构型模式和行为型模式。其中,创建型模式关注对象的创建过程,结构型模式关注对象的组合,行为型模式关注对象之间的通信和交互。常见的设计模式包括但不限于:
1.创建型模式:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。
2.结构型模式:适配器模式、桥接模式、装饰器模式、组合模式、外观模式、享元模式、代理模式。
3.行为型模式:责任链模式、命令模式、解释器模式、迭代器模式、中介者模式、备忘录模式、观察者模式、状态模式、策略模式、模板方法模式、访问者模式。
另外,还有一类设计模式是J2EE设计模式,主要用于解决企业级应用程序开发中的问题。常见的J2EE设计模式包括但不限于:MVC模式、业务代表模式、组合实体模式、数据访问对象模式、前端控制器模式、拦截过滤器模式等。
什么是设计模式?有哪些常用的设计模式?
设计模式是一套被反复使用、经过分类的、代码设计经验的总结。它是前辈们对代码设计的最佳实践的总结,包括面向对象设计原则、编程习惯和优秀经验等,是一种解决特定问题的一系列套路。
常用的设计模式大致可以分为以下几类:
1. 创建型模式:主要用于处理对象的创建,包括单例模式、工厂模式、抽象工厂模式、建造者模式和原型模式。
2. 结构型模式:主要用于处理类或对象之间的关系,包括适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式和享元模式。
3. 行为型模式:主要用于处理对象之间的通信,包括观察者模式、模板方法模式、命令模式、状态模式、职责链模式、访问者模式、策略模式、中介者模式和备忘录模式。
4. J2EE模式:主要用于处理企业级应用程序开发,包括MVC模式、业务代表模式、组合实体模式、数据访问对象模式、前端控制器模式和拦截过滤器模式。
以上是常用的几种设计模式,不同的设计模式适用于不同的场景,选择合适的设计模式可以提高代码的可扩展性和可维护性。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![7z](https://img-home.csdnimg.cn/images/20210720083312.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)