【问题标题】:MVVM What to use? Windows phone 8MVVM 有什么用?视窗电话 8
【发布时间】:2012-12-21 21:30:02
【问题描述】:

我在这里有一个设计问题我已经看到了 MVVM 轻量级实现和一个非常简单的 Micorsoft MVVM 示例 for windows phone LINK,现在的问题是什么是理想的前进方式

MVVM Light 或 Very Simple Microsoft 方式(如上面的链接),应用程序开发是长期(企业类)使用,我需要决定走哪条路,我对利弊有点困惑

  1. 如果我有 6 页,用哪个更好?

  2. 在简单 MS 方式的情况下,使用 MVVM,我如何轻松访问另一个 ViewModel 的公共数据
    我们可以有 IOC 服务。

  3. 如何处理应用程序激活或停用事件?

  4. 哪个性能更好更快?

  5. 对于第一次查看该应用程序的人来说,代码复杂性和维护工作更简单?

所以请有人帮助我获得答案或理解事情。非常感谢您的帮助!!!

【问题讨论】:

  • 就目前而言,这个问题有点开放式。你能稍微完善一下你的问题吗?
  • 只是我应该使用 MVVM light 还是 Simple MS 方式(如链接)

标签: mvvm mvvm-light windows-phone windows-phone-8


【解决方案1】:

首先,MVVM Light 是一个有助于开始使用 MVVM pattern 的框架。您不需要使用 MVVM Light 来实现 MVVM 模式,它只是让其中的一部分变得更容易。

所以它有点使你的几个问题无效,但由于我正在使用 MVVM Light 完成我的 WP8 应用程序,我会假设你使用该框架来回答它们(我推荐它)。

  1. 6 页很容易处理。您应该了解并了解如何使用 ViewModelLocator 和 Messaging 来解耦页面、导航及其关联的视图模型
  2. 我使用 Ninject 在我的 ViewModelLocator 中执行 IOC/DI。
  3. 这有点繁琐,但我认为在这种情况下打破 MVVM 模式是可以的,因为这些方法在 App.xaml.cs 中
  4. MVVM 性能显然会慢一些,但除非你做得不好,否则你永远不会注意到它。值得记住的是,当没有附加调试器时,应用总是会运行得更快。
  5. 我认为 MVVM 是一种很好的模式,可以很好地分离关注点和职责。

我知道这实际上并不能回答您的问题,但鉴于我之前提到的内容,您的问题没有意义。

希望这会有所帮助!

【讨论】:

  • 还有一个问题如何处理数据验证部分?
  • 谷歌“数据验证 MVVM”。有很多关于如何做到这一点的文章。还四处寻找“数据验证 windows phone”
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-02-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-06-27
相关资源
最近更新 更多