随笔分类 - 设计模式
摘要:建造者模式:结构:1.产品对象:一类产品的抽象,具体产品的建造应该在具体建造者中实现3.抽象建造者4.具体建造者:对于每种具体产品都应该有一个对应的建造者,其中应该有一个抽象产品对象成员变量5.装配者:建造者对各个零件单独建造,没有顺序,因此,需要早装配者中确定建造顺序 优点:1.建造者独立,易扩展
阅读全文
摘要:命令模式:场景: 对一个对象要进行很多动作,每个动作就是一个命令。在原有的逻辑中,需要在客户端写出许多分支语句,针对内个动作,调用该对象类的成员函数。每增加一个动作,都需要在客户端和对象类中修改代码。违背了高内聚,低耦合的原则。因此,对于这种情况就可以使用命令模式。组成元素: 1.抽象命令类 2.具
阅读全文
摘要:观察者模式场景: 多个观察者观察一个目标对象的状态,若该目标对象状态发生改变,则观察者会对此作出反应实现: 目标对象: 1.状态变量 2.观察者列表 3.attach成员函数用于向观察者列表中添加观察者 4.detach成员函数,用于删除观察者列表中的观察者成员 5.notify函数,用于当状态变量
阅读全文
摘要:单例模式:目的:保证每个类只有一个静态对象实现方式: 1.构造函数私有化 2.公有静态类对象指针 3.产生静态类对象指针的公有函数分类:懒汉式:在需要的时候才进行初始化 优点:避免内存消耗 缺点:需要加锁,影响执行效率饿汉式:一开始就进行初始化 优点:不需要加锁,执行速度快 缺点:会造成内存消耗 注
阅读全文