| 企服解答
设计模式一般用来解决以下几个问题:1、通过显示指定类创建对象;2、紧耦合;3、通过生成子类扩展功能;4、对对象表示或实现的依赖;5、不能方便地修改类;6、对算法的依赖;7、对软硬件环境的依赖。
设计模式一般用来解决什么问题
1、通过显示指定类创建对象:
创建对象的最简单方法是采用New关键字直接调用类的构造函数
2、紧耦合:
紧耦合的类难以复用和维护,修改或删除一个类,必须修改与之相关联的类。一个设计不良的系统经常是铁板一块,修改部分内容都会牵涉到全部。
在设计时,需要类之间是松耦合的,与此相关的模式有抽象工厂模式、命令模式、外观模式、中介者模式、观察者模式和职责链模式等。
3、通过生成子类扩展功能:
通过生成了子类扩展功能有很多问题,会引起子类数量的大量增加和类层次的增加通过对象组合技术实现功能扩展是更好的选择。
4、对对象表示或实现的依赖:
如果客户知道对象如何表示、保存、定位或实现,那么在对象发生变化时也可能发生变化,因此需要对客户隐藏这些信息。
5、不能方便地修改类:
很多情况下我们无法修改已存在的类,但又希望修改这个类。相关的设计模式有适配器模式、装饰模式和访问者模式等。
6、对算法的依赖:
算法实现的目的是不变的,但算法本身却不是一成不变的。
7、对软硬件环境的依赖:
应用程序总是要与其运行环境打交道,我们希望屏蔽其对运行环境的依赖,以确保可移植性和可维护性。
| 扩展阅读
总体来说设计模式分为三大类:
1、创建型模式共五种:
工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。
2、结构型模式共七种:
适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。
3、行为型模式共十一种:
策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。
[免责声明]
文章标题: 设计模式一般用来解决什么问题
文章内容为网站编辑整理发布,仅供学习与参考,不代表本网站赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请及时沟通。发送邮件至36dianping@36kr.com,我们会在3个工作日内处理。