我现在正在通过iOS编程工作,并且不确定我的程序实现策略是否是最好的做事方式。
根据我的理解,模型应该是一个独立运行的程序,即如果我通过命令行通过提供必要的输入来调用它的函数,程序应该自己执行并产生所需的结果。
有几次,我发现我的模型和VC交织在一起。也就是说,虽然VC纯粹是处理View和用户输入并因此调用模型中建立的函数,但在我看来,如果没有视图,模型将无法独立运行。
我的问题基本上来自于这个怪癖,你们是否坚持让你的模型独立于View控制器运行,或者让它们互相干扰并相互依赖。
答案 0 :(得分:1)
模型不应直接与视图通信。模型应仅在响应视图控制器进行的查询时与视图控制器通信。视图控制器应在输入视图的输入和模型内的数据之间进行调解。将所有这些部件分开是绝对重要的。即使你不这样做,你的应用程序仍然可以正常工作,在某些情况下,它可能会更快捷的捷径,但是当你处理所有问题时,你将只会为自己设置很多痛苦。 iTunes Connect上有关于此的精彩视频。特别是CS193P中涵盖MVC的视频#1,请参阅:
答案 1 :(得分:1)
您的模型不应包含任何控制器或视图代码。您应该能够在不需要控制器或视图的情况下进行测试。
您的控制器应该处理模型和视图之间的所有调解工作。