快速跳入设计模式

我们什么时候应该使用它? 当有一个以上的班级实例时会引起问题。 单例模式意味着在任何时间我们只能创建该类的一个实例/对象。 此模式阻止创建多个实例。

我们使用 Apple的 次数很多次 基础 API, 例如:
UserDefaults .standard
UIApplication .shared
FileManager .default

示例:#1

这称为True Singleton或称为default

示例:#2

这与真正的 Singleton非常相似,我们将init声明为public ,从而允许创建其他实例

示例:#3 LocationService

我们应该注意些什么?

  • 如果您只是试图将信息从一个视图控制器传递到另一个,则单例不适合
  • “单身人士有问题的最常见原因是测试” 在Swift中避免单身人士

单例要点:

  • 单例模式将一类限制为仅一个实例。
  • 注意过度使用此模式! 在创建单例之前,请考虑其他方法来解决该问题。