没有C的MVC Switch V?

时间:2012-02-16 13:33:23

标签: model-view-controller architecture design-patterns

我最近开始仔细研究Java和一些常见的模式。至于MVC,关于必须绘制沙子中的线的位置,有无数的讨论。但!我读过的大部分内容都是安静的,毫无结果的恕我直言,因为没有任何实用的设备是如此。

所以,我正在研究这个主题,因为我被要求重写一个旧的PHP应用程序,并且 - 如果可能的话 - 使它成为一个“真正的”应用程序。现在,去干净的建筑物不是很好吗?我想构建具有相同后端的Web版本和SWT版本。

问题:改变V对我来说很清楚,但据我所知,我必须完全构建一个新的控制器,否则我必须在控制器和视图之间添加适配器,反过来又是如果我在模型侧应用相同的控制器本身,则与控制器本身相同。因此,简而言之:实际上只改变现实场景中的V是否可取或甚至可能?

希望,这对某人有意义;)

亲切的问候,

马库斯

1 个答案:

答案 0 :(得分:0)

为什么您希望有两个应用程序可以使用不同类型的输入来共享处理输入的相同组件?充其量你可以拥有“瘦”控制器,将大部分逻辑推入模型中。 MVC的Web和桌面应用程序实现之间的区别非常显着,特别是在视图和控制器之间的耦合方面。我真的不知道如何在Web /桌面应用程序之间简单地交换视图。

另一方面,在同一基本平台内交换不同类型的视图是非常可能的。例如,您可以轻松地为同一个应用程序同时拥有标准和移动Web视图。只更改视图是可能的,并且可能比制作应用程序的标准版和移动版的其他方法更可取。