0

在我的应用程序中,我希望有一个“大脑”来跟踪正在发生的事情。也就是说 - 多个视图控制器需要能够在这个大脑中设置值并获取它的数据。

我将如何实施呢?据我所知,使我的大脑成为单例类是一种选择,否则我必须在每个视图控制器中将大脑声明为委托,并在每次创建大脑时将其分配给它,这看起来很混乱。

4

4 回答 4

3

正如您所说,您的答案在您的问题中。如果您想从多个对象访问一个对象并且不需要多个副本,请使用单例模式。

请记住,如果您的代码中有两个或更多对象会尝试同时操纵“大脑”,则必须保持数据线程安全。

于 2012-07-02T08:42:10.100 回答
2

至于单例模式,您可能想阅读这篇单例有什么不好的地方?

确保你使用MVC模式设计你的应用程序,你应该很好。“大脑”就是模型。

您的“模型”的行为方式取决于您的应用程序。

于 2012-07-02T09:18:01.153 回答
1

单例模式是一种选择。另一个选项是 NSUserDefault。

于 2012-07-02T08:41:23.720 回答
1

是的,你是对的 Singleton 是一个不错的选择。因为我认为您正在处理少量数据,所以单例将是好的和容易的,否则将数据保存在数据库或 NSuserDefaults 中。

于 2012-07-02T09:02:04.523 回答