0

我是一名自由开发者。使用 MVVM 模式有什么真正的优势吗?

我知道 MVVM 最常用于大型团队,因为设计和代码之间存在很大差异。

但是像我这样的自由职业者呢?无论如何我都应该使用 MVVM 模式,而不是像 MVP 和 MVC 这样的模式?

4

3 回答 3

5

就个人而言,我认为 MVVM 与 WPF 齐头并进。当我开始学习 WPF 时,简直就是一场噩梦……例如,它与 Winforms 是如此不同。但是当我发现 MVVM 并开始将它与 WPF 一起使用时,一切就都到位了。

拥有一个包含特定或(视图)所需的所有数据的类(视图模型)非常有意义。这曾经是我最大的问题之一......我将这些数据放在哪里?WindowUserControl

我遇到的另一个问题是创建并完全理解DependencyProperty对象以及它们附带的各种处理程序。使用 MVVM,我们不需要担心这些……我们可以只使用普通的 CLR 属性,尽管调用INotifyPropertyChanged' interface. No longer do I need to worry about setting up a静态PropertyChangedCallback处理程序只是为了监视传入的值。

我发现 MVVM 的唯一困难是“不使用背后的代码”……但是一旦我发现这更像是一个请求而不是规则,那么问题就基本消失了。一旦我发现它Attached Properties可以实现大多数 UI 事件类型的功能,这些功能通常会放在后面的代码中(例如MouseDown事件等),那么不使用后面的代码也变得容易多了。

对我来说,这是一个简单的选择……除非项目很小,否则我总是选择 MVVM 与 WPF 一起使用。

于 2013-08-13T15:53:22.550 回答
2

我认为这更多地取决于您使用什么框架以及客户想要什么。此外,我认为很少有从头开始一个项目的情况,大部分时间你将处理已经存在的项目,然后遵循已经开始的任何项目是一个好主意。

但是,如果你没有外界的限制,从头开始,我认为你觉得最舒服的就是最好的。对我来说,MVC 对于大多数项目来说已经足够好了。

于 2013-08-13T15:44:09.037 回答
1

MVVM 模式最初是为 WPF 设计的,但可以或多或少地应用于其他框架。如果使用 WPF,我建议使用 MVVM,它可以使代码更清晰、更易于管理,并且遵循这种模式几乎没有开销。不太复杂,而且绝对不仅仅是大型项目,小型项目通常会发展成大型项目,并且从一开始就遵循成熟的模式,例如 MVVM,而不是在以后进行改造是很好的做法。

于 2013-08-13T15:55:15.203 回答