快速跳入设计模式
我们什么时候应该使用它? 当有一个以上的班级实例时会引起问题。 单例模式意味着在任何时间我们只能创建该类的一个实例/对象。 此模式阻止创建多个实例。
我们使用 Apple的 次数很多次 基础 API, 例如:
UserDefaults .standard
UIApplication .shared
FileManager .default
示例:#1
这称为True Singleton或称为default
示例:#2
这与真正的 Singleton非常相似,我们将init声明为public ,从而允许创建其他实例
示例:#3 LocationService
我们应该注意些什么?
- 如果您只是试图将信息从一个视图控制器传递到另一个,则单例不适合
- “单身人士有问题的最常见原因是测试” 在Swift中避免单身人士
单例要点:
- 单例模式将一类限制为仅一个实例。
- 注意过度使用此模式! 在创建单例之前,请考虑其他方法来解决该问题。