2012-08-28 16 views

回答

5

你的同事指的是在纯MVC模式中将View和Controller分离为松散定义的原则。 JSF应用程序中的Managed Bean非常适合Controller的角色,然而,由于您陈述的原因,这不应该被认为是一条硬性和快速的规则。

我引用马丁·福勒从企业应用架构模式:

正如我所说的,MVC的价值在于它的两个分离。其中包括 演示文稿和模型的分离是软件中最重要的设计原则之一,并且唯一的时候您不应该遵循 它是非常简单的系统,其中该模型在 无论如何都没有真正的行为。一旦你得到一些非可视逻辑,你应该应用 分离。不幸的是,很多UI框架使其难以实现,而那些不经常被教导的问题没有分离。

视图和控制器的分离不太重要,所以我只有 建议这样做,当它真的有帮助。对于富客户端系统来说,这个系统几乎不存在,尽管它在控制器分离出来的前端很常见。网页设计中的大多数 模式都基于这一原则。

本质上福勒说,绑定到控制器的视图并不像绑定模型那么重要,所以如果这样做有帮助,那么在视图中使用控制器或在每个视图中使用多个控制器肯定是可以接受的。

+0

+1 [Martin Fowler](http://martinfowler.com)的引用 –