【问题标题】:Is MVVM itself a Observer pattern?MVVM 本身是观察者模式吗?
【发布时间】:2014-05-12 12:18:13
【问题描述】:

我对 MVVM 和观察者模式的概念感到困惑。 MVVM 本身是否遵循观察者模式。还是它们完全不同?

谁能用简单的话给我解释一下。

提前致谢。

【问题讨论】:

    标签: design-patterns windows-phone-8 mvvm observer-pattern


    【解决方案1】:

    MVVM- 和 Observable- 模式是不同的模式,你会发现很多很好的例子。 假设您正在实现一个 MVVM 电话应用程序,这两种模式可以很好地结合使用:

    • 您的 ViewModel (MVVM) 具有要在 XAML-VIEW (MVVM) 中显示/更新的属性。 任何时候你设置(或更新)一个属性值(在你的 ViewModel 中)你都会触发类似()=> PropertyChanged("PropertyName);
    • Observer 现在位于您的 MVVM 框架(或 ViewModel 的基类)中,该组件观察这些变化并使用 VIEW 管理更新。

    【讨论】:

      【解决方案2】:

      MVVM 基本上是一种UI 模式。它的主要目的是将视图与逻辑分开。 这有助于构建应用程序并使它们更具可测试性,因为它引入了清晰的关注点分离并允许您开发可扩展的应用程序(如果做得好)。

      它是一个指导方针,也可以利用其他模式,并且与 XAML 相关开发技术的绑定引擎配合得很好。

      由于 MVVM 是构建应用程序代码的指南,它肯定可以利用观察者模式。例如,有一个名为 ReactiveUI http://www.reactiveui.net/ 的框架,它使用可观察技术 (RX) 实现了 MVVM 模式。

      以及 MVVM 基础知识,例如通过 NotifiedChangedProperty 和 ObservableCollections 从视图模型通知视图。

      HTH

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2016-02-20
        • 2023-04-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多