【问题标题】:What is the role of an MVVM Framework? [duplicate]MVVM 框架的作用是什么? [复制]
【发布时间】:2014-09-05 21:10:19
【问题描述】:

我是一名 C# WinForms 开发人员,希望使用 MVVM 模式迁移到 WPF。我看到很多比较各种框架的问题,但它们的作用是什么?为什么我需要一个?

编辑:这不是链接问题的重复。这个问题涉及诸如 PRISM 之类的框架,而不是 MVVM 本身。

【问题讨论】:

  • 我真诚地怀疑这是该问题的重复。
  • 同意。我正在删除它...
  • 太宽泛了,我猜。
  • 鉴于我是这个领域的新手,并且找不到相关的问题,这不是 SO 的重点吗?
  • 我个人认为这是一个相关的问题(因此回答它)。可能只是人们觉得你还没有完成研究(另一个反对票的原因)。

标签: c# .net wpf mvvm frameworks


【解决方案1】:

各种框架使 MVVM 的实现更容易,因为您需要一些样板代码,重复编写可能会很乏味。

话虽如此,您绝对不需要需要一个。您可以自己实现 MVVM,它会工作得很好(甚至没有那么难)。事实上,你可能应该至少自己实现一次,这样你就知道框架为你做了什么,但这只是我的意见。

【讨论】:

  • 那么它自动化了多少工作?我在问,因为我的开发团队目前正在讨论使用一个。
  • @Gyrien 我不能说太多,因为我几乎总是自己滚动(它真的并不难)。它可能会节省一些在 NotifyPropertyChanged 片段上的输入,并且可能会在模型和数据对象的视图模型之间进行一些自动映射。不过,所有这些功能都可以用其他工具/库复制。我肯定会在没有框架的情况下开始,如果你真的觉得它有帮助,以后再添加一个(可能在对你正在考虑的框架进行更多研究之后)。
【解决方案2】:

如果您来自 WinForm 背景,您可能习惯于所有东西都采用“代码隐藏”的开发风格 - 应用程序的行为在 UI 的事件处理程序中调用。

如果是这种情况,您的代码库可能变得非常复杂并且难以日常维护和使用。这是 MVVM 或更一般地 MVC 试图通过分离模型、视图和控制器(MVVM 中的视图模型)的关注点来解决的问题之一。

我建议您在尝试解决 MVVM 的实现细节之前阅读 MVC、MVVM 和关注点分离的原则。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-04-03
    • 1970-01-01
    • 2012-05-15
    • 2016-06-10
    • 1970-01-01
    • 2018-10-14
    • 1970-01-01
    相关资源
    最近更新 更多