iOS开发常见设计模式-单例模式

在Mac开发或iOS开发中我们常常会使用到单例模式。

应用场景:确保程序运行期间某个类,只有一份实例(或对象),用于进行资源共享控制。

优势:使用简单,延时求值,易于跨模块

敏捷原则:单一职责原则

在开发中我们会用到NSNotificationCenter、NSFileManager等,获取他们的实例通过[NSNotificationCenter defaultCenter]和[NSFileManager defaultManager]来获取,还有iOS中的实例:[UIApplication sharedApplication],其实这就是单例。

注意事项:确保使用者只能通过 getInstance方法才能获得,单例类的唯一实例。

java,C++中使其没有公有构造函数,私有化并覆盖其构造函数。

Objective-C中,重写allocWithZone方法,保证即使用户用 alloc方法直接创建单例类的实例,

返回的也只是此单例类的唯一静态变量。

案例如下:

iOS开发常见设计模式-单例模式_第1张图片

你可能感兴趣的:(iOS开发常见设计模式-单例模式)