我认为自己拥有GoF设计模式的中级知识。但是,在将这些模式分类为结构和行为模式时,我感到困惑。我对创作模式没有任何困惑。
来自维基百科 - 装饰模式 - 在面向对象的编程中,装饰模式是一种设计模式,允许将行为静态或动态地添加到单个对象,而不会影响来自同一个类的其他对象的行为。
从上面的定义可以清楚地看出它是关于行为的,然后是
感谢。
答案 0 :(得分:6)
行为模式是关于单独对象之间的通信:诸如中介,观察者,责任链(甚至是访客,其被描述为“将算法与其操作的对象结构分离”)之类的事物。它们指定了单独对象的交互方式。
结构模式是关于组合和分层抽象的方法,它们是适配器,桥接和复合等。装饰器是一种用于组合功能的技术,因此它与结构模式一致。
答案 1 :(得分:0)
如果您的报价需要答案:行为的变化是由结构修改引起的。
即你“装饰”一个对象(通过你的类的特定结构)来实现所需的行为(通过委托)