设计模式
文章平均质量分 85
CodeNest
这个作者很懒,什么都没留下…
展开
-
【C++ | 设计模式】观察者模式的详解与实现
当一个对象的状态发生变化时,所有依赖于它的对象都会收到通知并自动更新。这个模式在现实生活中非常常见,比如新闻订阅、社交媒体的推送通知等。举个简单的例子想象一下,你订阅了一个YouTube频道。当这个频道发布新视频时,你就会收到通知。这就是观察者模式的一个实际应用。YouTube频道相当于“被观察者”,你作为订阅者则是“观察者”。原创 2024-09-01 21:14:48 · 1287 阅读 · 0 评论 -
【C++ | 设计模式】代理模式的详解与实现
学校附近的各种代理点很多:“办卡、办卡,动感地带月租只要 18 啦”、“充值、充值,充 100 送 50”。它通过引入代理对象,间接地操作目标对象,从而实现对目标对象的控制。代理模式的核心思想是通过代理对象来控制对目标对象的访问。Proxy(代理):持有一个 RealSubject 引用(指针),可以在需要时将请求转发给 RealSubject,以此起到代理的作用。这里,代理模式可以理解为:移动公司把充值的职责托付给代理点,代理点代替移动公司充值,客户直接与代理点打交道,而非移动公司。原创 2024-09-01 21:13:55 · 1372 阅读 · 0 评论 -
【C++ | 设计模式】抽象工厂模式的详解与实现
抽象工厂接口,声明了创建一系列产品的方法。原创 2024-08-29 21:54:00 · 366 阅读 · 0 评论 -
【C++ | 设计模式】工厂方法模式的详解与实现
工厂模式基本和简单工厂模式差不多,简单工厂模式 - 在产品子类添加时,需要添加一个判断分支,这违背了开放-封闭原则。ConcreteFactory(具体工厂):实现抽象工厂接口的具体工厂类,包含与应用程序密切相关的逻辑,并且被应用程序调用以创建产品对象。Product(抽象产品):所创建对象的基类,也就是具体产品的共同父类或共同拥有的接口。:当需要创建不同类型的产品对象,并且这些产品对象具有相似的接口时,可以使用工厂方法模式。:当系统需要依赖于产品的接口,而不是具体的实现时,可以使用工厂方法模式。原创 2024-08-29 21:53:26 · 835 阅读 · 0 评论 -
【C++ | 设计模式】简单工厂模式的详解与实现
他们是驰名世界的汽车企业,也被认为是高档汽车生产的先导,最可怕的是均属于德国制造。简单工厂模式的实质是。它是工厂模式家族中最简单实用的模式,可以理解为是不同工厂模式的一个特殊实现。一旦添加新产品就不得不修改工厂逻辑,在产品类型较多时,有可能造成工厂逻辑过于复杂,不利于系统的扩展和维护。由于工厂类集中了所有产品的创建逻辑(违反了高内聚责任分配原则),职责过重,一旦无法正常工作,整个系统都将受到影响。客户端无需关心具体产品如何创建与组织,仅需知道具体产品所对应的参数即可,可以在一定程度减少使用者的记忆量。原创 2024-08-28 22:01:24 · 572 阅读 · 0 评论 -
【C++ | 设计模式】单例模式的详解与实现
单例模式(Singleton Pattern)是设计模式中最简单的形式之一,其目的是。这种模式涉及到一个单一的类,该类负责创建自己的对象,同时。这个类提供了一种访问其唯一对象的方式,可以直接访问,不需要实例化该类的对象。原创 2024-08-28 21:59:10 · 1197 阅读 · 0 评论