谁能指导我在 Flex 3 中实现 ViewModel 的一些代码或教程?
我在网上找到的只是 Silverlight 的示例。
Martin Fowler 过去也曾在“ Presentation Model ”一词下写过这些想法。因此,您可能还会在该搜索短语下找到有用的教程,因为它不是“MS 发明的术语”。:-)
事实上,这个 MS 概述材料直接承认了 Fowler 的工作
2005 年,现任微软 WPF 和 Silverlight 架构师之一的 John Gossman 在他的博客上公开了 Model-View-ViewModel (MVVM) 模式。MVVM 与 Fowler 的 Presentation Model 相同,因为这两种模式都具有对 View 的抽象,其中包含 View 的状态和行为。Fowler 引入了 Presentation Model 作为一种创建独立于 UI 平台的 View 抽象的方法,而 Gossman 引入了 MVVM 作为一种利用 WPF 核心特性来简化用户界面创建的标准化方法。从这个意义上说,我认为 MVVM 是更通用的 PM 模式的专门化,专为 WPF 和 Silverlight 平台量身定制。
我想分享我写的 MVVM (Silverlight) 与 PresentionModel (Flex) 的比较。它显示了相同模式的两种实现如何不同/比较:
您发现的所有示例都适用于 Silverlight 的原因是 MVVM 基本上是 Microsoft 的一项发明。它与将 WPF 视图与数据绑定的难易程度有关。“ViewModel”只不过是描述传统 MVC 设计模型中 Controller 执行的功能子集的一种方式;一些 MVVM 描述甚至包括一个控制器。
话虽如此,您的应用程序是否严格遵循 MVVM 或 MVC 模型并不重要。它更像是一个高层次的组织理念,应该指导您的设计和开发。如果您对模型一无所知,您可以找到任意数量的快速网络教程,可能还有一些关于该主题的印刷文献。