我不知道我是否正确地做这件事。我正在研究一个用户必须登录的大型应用程序,并与各种功能和数据进行交互。有许多视图控制器需要访问此用户对象。在Objective-C中共享数据对象的最佳方式是什么?
以下片段是用户登录的时刻,现在我有一个用户对象可以在我的应用程序中使用。就在这种情况下,我使用虚拟数据。
User *user = [User new];
[user setupTempOfflineData];
self.newViewController.user = user;
[self containerAddChildViewController:self.newViewController];
在newViewController是属性:
@property (nonatomic, strong) User *user;
现在NewViewController可能有许多儿童和那些孩子们查看自己的控制器。所有这些都给用户提供了强有力的参考。其他信息,例如用户创建的注册组或内容的列表仍然存在。有时我会通过用户对象访问下载的信息,或者只是存储和共享对阵列/数据本身的引用。
在我脑子里的东西告诉我,我应该使用单身人士或其他设计模式,我只是不熟悉。因此把我带到这里来问这个问题:
我正在做对吗?
这是一种方法。有几十个,没有一个“最佳”的方式。 (使用单身/静态,BTW,有时是必要的,但不应该是你的第一个想法。) –