
设计模式
telllong
c/c++/golang/js/java/python programer
展开
-
装饰者模式介绍-并用C++实现
装饰者模式是一种结构型设计模式,它允许动态地将行为添加到对象中,而不需要改变其类。在该模式中,装饰者类包装原始类,并在其上添加新的行为或修改现有行为,从而扩展其功能。装饰者模式的应用场景是需要在不修改现有代码的情况下添加新功能或修改现有功能的情况。在运行时动态地添加或删除对象的行为。在不创建子类的情况下,扩展对象的功能。给一个对象增加多个不相关的行为,而不需要创建复杂的继承结构。原创 2023-05-23 13:51:00 · 134 阅读 · 0 评论 -
抽象工厂模式介绍--并用C++简单实现
抽象工厂模式是一种创建型设计模式,它提供了一种创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。它允许客户端使用抽象接口来创建一组相关的对象,而不必关心它们的具体实现。系统需要独立于它的产品的创建、组合和表示时。系统需要由多个系列中的一个来配置时。需要强调一组相关产品对象的设计以便进行联合使用时。提供一个产品类库,而只想显示它们的接口而不是实现时。原创 2023-05-22 14:04:30 · 161 阅读 · 0 评论 -
工厂方法模式介绍-并用C++简单实现
工厂方法模式是一种创建型设计模式,该模式提供了一个创建对象的接口,但具体创建哪个对象则由子类决定。工厂方法模式可以将对象的创建和使用分离开来,从而更加灵活地管理对象的创建过程。其应用场景通常是在需要创建复杂对象的情况下,例如游戏中创建不同种类的怪物、人物等。通过将对象的创建交给子类来完成,可以更好地扩展系统,减少耦合性并提高代码复用性。工厂方法模式的实现通常包括一个抽象工厂类和多个具体工厂子类。抽象工厂类定义了一个创建对象的接口,具体工厂子类则实现了该接口来创建具体的对象。原创 2023-05-22 14:03:52 · 116 阅读 · 0 评论 -
观察者模式介绍-并用C++简单实现
观察者模式是一种行为型设计模式,它定义了对象之间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖它的对象都会自动收到通知并进行相应的更新。观察者模式的应用非常广泛,比如在图形界面编程中,当用户对界面进行操作时,界面需要对其进行相应的更新;在发布订阅模式中,观察者模式可以作为订阅者的实现方式;在事件驱动编程中,观察者模式可以用来处理事件的响应等等。原创 2023-05-19 11:36:08 · 129 阅读 · 0 评论 -
单例模式介绍-并用C++简单实现
单例模式是一种创建型设计模式,它保证一个类只有一个实例,并提供一个全局访问点让程序能够访问该实例。其应用场景通常是在多个模块中需要共享一个对象,例如日志对象、数据库连接池、配置信息等。通过单例模式可以确保这些共享对象只被创建一次,避免了资源浪费和出现意外的问题。单例模式的实现通常通过一个静态方法(或者函数)来获取该类的唯一实例。该方法首先检查该实例是否已经被创建,如果已经创建则返回该实例,否则就创建该实例,并将其保存好以备下次调用。原创 2023-05-18 16:58:34 · 130 阅读 · 0 评论