根据良好的编程实践,在程序运行时开始时,首先要创建哪个Controller,Model和View组件,哪些应该创建另外两个?
我的意思是,主要功能是否首先创建控制器,然后控制器应该创建模型和视图,并以某种方式使其自己知道?
或者我应该首先创建视图,在显示之前,将初始化控制器,这将创建模型?
或者模型应该先来吗?或者他们都应该在主要功能中并行创建?实现MVC的正确方法是什么?
编辑:我对一般答案感兴趣,不过目前我正在使用Java Swing和Windows Phone 7.
解决方法
我认为每一个都可以单独创建.
>如果控制器负责创建模型,这意味着您不能拥有没有控制器的模型,并且模型和控制器之间始终存在一对一的映射.例如,对于一个网站,您可以拥有常规数据的控制器,另一个用于该数据的xml版本(尽管通常这是相同的控制器,您只需指定要使用的协议).
>如果控制器负责创建视图,则将以控制器和视图之间的一对一映射结束.控制器只处理传入请求,执行一些逻辑,并提供答案.它不应该关心谁在要求数据.例如,对于Web应用程序,您可以使用RSS Feed和HTML页面,两者都使用相同的控制器.另一个例子是您的典型Rails应用程序,其中一个控制器映射到多个视图(索引视图,显示视图,编辑视图,…)
然而,有人有责任将他们整合在一起,但这将是您的主要应用,也不是其中的一个组成部分