Swift设计模式----单例模式

单例模式是一种创建型设计模式, 让你能够保证一个类只有一个实例, 并提供一个访问该实例的全局节点。
iOS里有很多单例模式的存在: UIApplication、NSUserDefaults、通知中心等。单例模式有很多种写法,直到写此文的今天,在Swift里实现单例的最佳实践就是这样的:

class FileManger{
    static let sharedInstance = FileManger()
    private init (){}
    
    //TODO
}

私有化初始化方法,防止外部调用创建不同实例,利用饿汉模式,在类加载时就已经创建了实例,防止多线程下创建多个实例的问题。
单例模式因为拥有和APP一样长的生命周期,到处都可以访问单例对象修改状态,不能继承,并且违反了单一职责的设计原则,饱受诟病,但是在iOS里单例却大行其道,设计自己的单例类时一定要谨慎!

你可能感兴趣的:(Swift设计模式----单例模式)