MVC 单例模式的理解

2017-05-18  本文已影响0人  MIUI轩

1.什么是MVC


mvc是model view controller的简称,

view-存放视图使用的

model -模型,有很好的复用性.有控制器到model的箭头,没有model到控制器的箭头。因为模型不需要知道控制器的存在,这样可以减少耦合,提高代码复用可能性。

controller-充当CPU的功能,即该应用程序所有的工作都由Controller统一调控。它负责处理View和Model的事件

2.单例

单例设计模式确保对于一个给定的类只有一个实例存在,这个实例有一个全局唯一的访问点。它通常采用懒加载的方式在第一次用到实例的时候再去创建它。

+(LibraryAPI*)sharedInstance

{

static LibraryAPI *_sharedInstance = nil;

static dispatch_once_t once Predicate;

dispatch_once(&oncePredicate, ^{

_sharedInstance = [[LibraryAPI alloc] init];

});

return _sharedInstance;

}

1.声明一个静态变量去保存类的实例,确保它在类中的全局可用性。

2.声明一个静态变量dispatch_once_t ,它确保初始化器代码只执行一次

3.使用Grand Central Dispatch(GCD)执行初始化LibraryAPI变量的block.这正是单例模式的关键:一旦类已经被初始化,初始化器永远不会再被调用。下一次你调用sharedInstance的时候,dispatch_once块中的代码将不会执行(因为它已经被执行了一次),你将得到原先已经初始化好的实例。

上一篇下一篇

猜你喜欢

热点阅读