Swift:除了单身人士之外,其他哪种方法可以存储当前使用者



我在项目中使用单身人士,但在stackoverflow singletons上阅读不好。

我有一个应用程序,该应用程序在应用程序代表中获取当前使用者信息。我需要整个应用程序访问这些信息,除了制作单身人士以存储现有使用者然后访问它以外,什么方式?

我还将单身顿用于firebasecontroller(用于在整个应用程序中再次使用Firebase数据的视图控制器)。这是一个好主意还是更好的选择?

有几种方法可以避免为当前用户提供单身。

  1. 您可以将当前用户作为类级别的var中的var保留在您的应用程序委托中,然后将其传递到视图控制器或其他需要它的类中。

  2. 您可以在核心数据或nsuserdefaults中坚持当前的用户信息,然后将其检索到您需要的地方。

我更喜欢选项1,因为它可以更好地适合访问当前用户的单元测试代码。

在我看来,

单身人士本质上并不是很糟糕的。我认为,当它们被用作全局变量时,它们就会变得不好,您可以简单地从代码中的任何地方访问并访问。应该避免!但是,您可以拥有一个单身人士,除非将其传递给您,否则您不会访问。

最新更新