【问题标题】:what is the difference between Decorator and mediator patterns in JavaScriptJavaScript 中的装饰器模式和中介器模式有什么区别
【发布时间】:2017-10-23 12:13:02
【问题描述】:

最近我开始学习 JavaScript 模式。当我从 Angular 1.x 比较 Angular 4 时。我在 Angular 4 中看到了一些新模式。

Angular 4 中使用了哪些模式?

我们有机会在 Angular 1.x 中实现装饰器模式吗?

Angular 是否使用 $broadcasts 或 $emits 来实现标准的中介者模式?

【问题讨论】:

  • $broadcasts 或 $emits 都不遵循装饰器或调解器模式。我会说它遵循责任链模式,其中 $broadcasts 沿着 dom 树传播,而 $emits 则通过 dom 树冒泡。 more info

标签: javascript angularjs angular design-patterns


【解决方案1】:

来自tutorialspoint

中介者模式用于降低多个对象或类之间的通信复杂性。该模式提供了一个中介类,该类通常处理不同类之间的所有通信,并通过松散耦合支持轻松维护代码。中介模式属于行为模式类别。 more info

装饰器模式允许用户在不改变其结构的情况下向现有对象添加新功能。这种类型的设计模式属于结构模式,因为这种模式充当现有类的包装器。

此模式创建了一个装饰器类,它包装了原始类并提供了额外的功能,使类方法签名保持不变。

我们将通过以下示例演示装饰器模式的使用,在该示例中,我们将在不改变形状类的情况下用某种颜色装饰形状。 more info

【讨论】:

    猜你喜欢
    • 2012-01-09
    • 2014-02-20
    • 2011-02-04
    • 1970-01-01
    • 1970-01-01
    • 2017-04-21
    • 2013-09-08
    • 2012-11-03
    相关资源
    最近更新 更多