设计模式
文章平均质量分 77
设计模式,用于复习
干干干就完了
这个作者很懒,什么都没留下…
展开
-
设计模式原则
设计模式原则 依赖倒置原则 高层模块(稳定)不应该依赖于低层模块(变化),二者都应该依赖于抽象(稳定)。 抽象(稳定)不应该依赖于实现细节(变化),实现细节应该依赖于抽象(稳定)。 开放封闭原则 对扩展开放,对更改封闭 类模块应该是可扩展的,但是不可修改 单一职责原则 一个类应该仅有一个引起它变化的原因。 变化的方向隐藏着类的责任。 Liskov替换原则 子类必须能够替换它们的基类。 继承表达类型抽象。 接口隔离原则 不应该强迫用户程序依赖它们不用的方法。 接口应该小儿完备。 优先使用对转载 2021-08-24 20:45:34 · 75 阅读 · 0 评论 -
设计模式——单例模式
单例模式 模式动机 对于系统中的某些类来说,只有一个实例很重要,例如,一个系统中可以存在多个打印任务,但是只能有一个正在工作的任务;一个系统只能有一个窗口管理器或文件系统;一个系统只能有一个计时工具或ID生成器。 如何保证一个类只有一个实例并且易于被访问呢?定义一个全局变量可以确保对象随时都可以被访问,但不能防止我们实例化多个对象。 一个更好的解决方法是让类自身负责保存它的唯一实例。这个类可以保证没有其他实例被创建,并且它可以提供一个访问该实例的方法。这就是单例模式的模式动机。 模式定义 单例模式:单例模式转载 2021-07-31 16:22:51 · 204 阅读 · 0 评论 -
proxy代理模式
代理模式 模式动机 在某些情况下,一个客户不想或者不能直接引用一个对象,此时可以通过一个称之为“代理”的第三者来实现间接引用。代理对象可以在客户端和目标对象之间起到中介的作用,并且可以通过代理对象去掉客户不能看到的内容和服务或者添加客户需要的额外服务。 通过引入一个新的对象(如小图片和远程代理对象)来实现对真实对象的操作或者将新的对象作为真实对象的一个替身,这种实现机制即为代理模式,通过引入代理对象来间接访问一个对象,这就是代理模式的模式动机。 模式定义 代理模式(Proxy Pattern):给某一个对象转载 2021-04-26 20:27:12 · 836 阅读 · 0 评论 -
适配器模式
适配器模式 模式动机 在软件开发中采用类似于电源适配器的设计和编码技巧被称为适配器模式 通常情况下,客户端可以通过目标类的接口访问它所提供的服务。有时,现有的类可以满足客户类的功能需要,但是它所提供的接口不一定是客户类所期望的,这可能是因为现有类中方法名与目标类中定义的方法名不一致等原因所导致的 在这种情况下,现有的接口需要转化为客户类期望的接口,这样保证了对现有类的重用。如果不进行这样的转化,客户类就不能利用现有类所提供的功能,适配器模式可以完成这样的转化 在适配器模式中可以定义一个包装类,包装不兼容接转载 2021-04-26 17:13:37 · 106 阅读 · 0 评论 -
观察者模式
观察者模式 模式动机 建立一种对象与对象之间的依赖关系,一个对象发生改变时将自动通知其他对象,其他对象将相应做出反应。在此,发生改变的对象称为观察目标,而被通知的对象称为观察者,一个观察目标可以对应多个观察者,而且这些观察者之间没有相互联系,可以根据需要增加和删除观察者,使得系统更易于扩展,这就是观察者模式的模式动机。 模式定义 观察者模式:定义对象间的一种一对多依赖关系,使得每当一个对象状态发生改变时,其相关依赖对象皆得到通知并被自动更新。观察者模式又叫做发布-订阅(publish/subscribe)模转载 2021-04-26 14:32:35 · 78 阅读 · 0 评论 -
三种工厂模式
文章目录简单工厂模式模式动机模式定义简单工厂模式的优点简单工厂模式的缺点适用环境实现代码工厂方法模式模式动机模式定义模式分析工厂方法模式的优点工厂方法模式的缺点适用环境实现代码抽象工厂模式模式动机模式定义抽象工厂模式优点抽象工厂模式缺点适用环境实现代码 转自 https://www.cnblogs.com/cxjchen/p/3143633.html 简单工厂模式 模式动机 考虑一个简单的软件应用场景,一个软件系统可以提供多个外观不同的按钮(如圆形按钮,矩形按钮,菱形按钮等),这些按钮都源自同一个基类,不过转载 2021-04-25 22:28:53 · 207 阅读 · 0 评论