我应该使用委托还是替代模式?

时间:2013-04-03 11:13:39

标签: ios design-patterns timer

我正在为iPhone学习OOP时开发间隔计时器健身应用程序。主计时器对象必须能够通知任何其他感兴趣的事件对象,例如切换到新的间隔或计时器完成等。

我的第一个想法是使用委托,但我希望多个对象能够被告知这些事件,而且它并没有真正委派任何工作,它只是通知他们......所以这似乎不对。

其他人可以提出另一种模式/方法吗?

3 个答案:

答案 0 :(得分:2)

这听起来像NSNotificationCenter(事件/订阅者模式)的好候选人

答案 1 :(得分:1)

如果收件人知道发件人,你应该让我们Key-Value-Observing,可可味的observer pattern,这样他就可以收到通知。

如果没有给出,则解耦NSNotifications的选项越多,因为发件人不需要知道发送通知的对象。

答案 2 :(得分:1)

Notifications Pattern

  

Cocoa的通知机制基于Observer模式实现一对多的消息广播。程序中的对象将自身或其他对象添加到一个或多个通知的观察者列表中,每个通知由全局字符串(通知名称)标识。想要通知其他对象的对象 - 观察对象 - 创建通知对象并将其发布到通知中心。通知中心确定特定通知的观察者,并通过消息将通知发送给他们。