【发布时间】:2016-05-12 11:41:34
【问题描述】:
在我的 iOS 应用程序中,我有从网络加载并保存为普通 Objective-C 对象的用户数据,该对象将其数据保存到 NSUserDefaults。我需要能够注销当前用户并将其删除,然后登录一个新用户并开始在整个应用程序中使用该用户。现在它只是一个我正在调用UserManager 的单身人士,使用方法-(User)currentUser。
我正在过渡到在我的 (http://typhoonframework.org) 中使用 Typhoon 框架进行依赖注入。存储用户数据的正确方法是什么?我知道我可以保留我的 UserManager 课程,通过 Typhoon 将其注入任何需要它的地方,并将其设置为 Typhoon 类型 definition.scope = TyphoonScopeSingleton;。
但是如果我这样做,不还是只是一个单例吗?我知道它好一点,因为它被注入到类中,而不是隐藏在它们的实现中。但是,似乎应该有一种更好的方法来将 User 对象保留在某处并注入当前对象,而不是将其包装在带有 getter 的 [injected] 单例中。
谢谢。
【问题讨论】:
标签: ios objective-c dependency-injection typhoon