0

我正在编写一个注册呼叫事件(未通话、拨号、断开等)的 iOS 应用程序。我有注册调用事件的代码,但我不确定放置它的正确位置在哪里(在模型中?在控制器中?)。

所有示例都将代码放在应用程序委托中,但这似乎很尴尬。毕竟,应用程序委托不是 MVC 的一部分。

谢谢!

4

2 回答 2

2

毕竟,应用程序委托不是 MVC 的一部分。

我可以争辩,但我感觉你太担心“正确的设计”了。如果您想更改这些事件处理程序的位置,我会将它们放在控制器中的某个位置(当然不是模型,因为它们不是数据提供者......)

但毕竟,为什么他们在应用程序委托中“尴尬”?这正是单例应用程序对象具有委托的原因:系统范围的事件应分别通知应用程序(及其委托),而不是应用程序的某些内部部分。这是把事情搞混了。

于 2013-01-11T16:04:55.717 回答
0

由于这些事件控制您的应用程序的部分,最好的答案是:在控制器中。这种将很多东西放在委托中的 Apple 风格确实是不好的编码习惯。

于 2013-01-11T16:04:07.060 回答