使用多个控制器时,Model类应该是Singleton吗?

时间:2016-09-24 12:48:08

标签: ios

我正在设计待办事项列表iOS应用程序。我有多个表视图,它们都修改相同的列表数组。我应该为待办事项列表数组模型使用单例类,以便它始终是最新的,无论哪个表视图访问它?

拥有一个包含模型数据的主控制器类(单例)会更好吗,并且有一些与数据交互的方法。然后让其他控制器在主控制器上调用这些方法吗?

4 个答案:

答案 0 :(得分:1)

是的,这就是MVC的想法。您有一个模型及其多个视图,其中的交互由多个视图控制器协调。

您不必将模型设为单身,尽管这是iOS开发中非常常见的方法。

答案 1 :(得分:0)

这肯定是一种方法,当然。

如果您以后决定要以基于文档的方式创建应用程序,那么您可能需要返回并重构,因此在做出决定之前,请先考虑将来的使用。

答案 2 :(得分:0)

这样做是完全可行的,但是你失去了可能拥有多个模型对象的灵活性。我个人建议有一个单独的“管理器”,从你的后端(或它来自哪里)获取模型,并持有对模型的引用。

答案 3 :(得分:0)

不,模型不应该是单身人士。单身人士过度使用。您可能希望为用户提供创建多个待办事项列表的功能。例如,也许一个用于家庭,一个用于工作。每个列表都是待办事项列表数据模型的单独实例。

使用单例将阻止您拥有多个活动待办事项列表。

相关问题