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块中的代码将不会执行(因为它已经被执行了一次),你将得到原先已经初始化好的实例。