模型视图控制器的替代“设计方法”是什么?MVC 似乎很流行(SO 是用它构建的,我知道很多)但它是唯一使用的方法吗?
8 回答
这篇关于几种不同交互式应用程序架构模式的最佳文章之一是这篇非常详细且经过充分研究的博客文章。它涵盖了模型-视图-控制器、三种不同风格的模型-视图-演示器、几种不同风格的演示-抽象-控制、监督控制器、被动视图和分层 MVC。
另一个有趣的模式是 Atomic Objects 的Presenter First模式。它不仅仅是一种设计模式,它也是一种过程模式。IOW:“Presenter First”这个名字不是随意的,它实际上描述了一个开发过程,在这个过程中,Presenter 首先被编写,驱动系统其余部分的设计。
还有很多其他的:
-
- 这在 WPF 应用程序中很常见(尽管Prism(通常)使用 MVP 模式)
MVC 是一种架构模式。这些是您可以尝试的其他架构模式(来自维基百科):
- 图层
- 多层架构
- 表示抽象控制 (PAC)
- 模型视图演示器 (MVP)
- 模型视图视图模型 (MVVM)
- 管道
- 隐式调用
- 黑板系统
- 点对点
- 面向服务的架构 (SOA)
- 裸对象
这些可在 Wikipedia中找到。
DCI - “数据、通信和交互”
http://www.antonioshome.net/kitchen/nbdci/index.php#dci-introduction
http://www.artima.com/articles/dci_visionP.html
面向对象编程的常识- MVC vs DCI
MVC 是更大的一组设计模式的一部分。我不知道您有多少经验,所以我不确定如何针对此响应。我是一名 .NET 程序员,但我发现 Java 书籍Head First Design Patterns非常有帮助。设计模式通常与有助于解决类似问题的其他模式分成几组。
我还发现Data Object Factory 网站也很有帮助。你应该四处寻找一些你喜欢的语言的资源。
我们使用的不是替代品,而是一种称为MVC-ARS的混合体。
Facebook 的flux.js 怎么样?我知道它依赖于平台,但它是 FB 用来替代 MVC 的数据流架构,所以我相信你也可以从那里得到一些想法。