模型视图控制器问题

时间:2011-01-09 02:46:44

标签: iphone cocoa-touch model-view-controller

我最近一直在研究我的iphone游戏,在决定我的各种课程的设计时遇到了分叉的道路。到目前为止,我已经坚持MVC模式,但以下情况让我感到困惑:

我在视觉上显示了4个按钮。每个按钮虽然包含一个容器UIView(我已经子类化)和2个UIButtons(也是子类)作为子视图。按下按钮时,它会执行翻转效果和其他内容。用户输入使用从我的容器UIView到我的控制器的目标操作。这部分还可以,以下部分是值得商榷的部分:

所以我已经将容器视图以及UIButtons子类化,我需要添加更多数据/方法(在某处)来做更多事情。将需要序列化的数据和非渲染相关代码放在视图类中似乎打破了MVC设计,但目前,将它放在那里对我来说是最有意义的。这几乎就像我的子视图是他们自己的小MVC,它看起来很整洁。在这种情况下,将数据/方法从视图中分离到我的主控制器似乎是不必要的,也是更多的工作。我应该怎么做?

谢谢你。

1 个答案:

答案 0 :(得分:0)

MVC模式非常有用,因为它允许您重用MVC模型的至少2个部分(通常是模型和视图),所以通常,编写干净代码的最佳方法是避免使用继承并使用代替委派(基于协议)和依赖注入(用于服务),因此您可以为您的系统生成单元测试,并提供更好的方法来升级代码开发

以下是一些有趣的文章: