1.MVC
MVC是iOS开发中一个比较重要也比较常见的设计模式,代表模型—视图—控制器,个人的理解是这样的:
控制器作为模型和视图之间的媒介,模型里面封装应用程序的数据,视图则是与用户交互相关的可以看见的View,控制器将View中的用户数据操作反馈给模型,让模型同步更新或保持数据,然后返回给控制器,控制器提醒视图实时更新数据。
2.KVC
NSkey Value Coding
是一个非正式的协议,两个方法:一个是setValue,即设置key的值,一个是获取key的值。
setValue:forKey: 设置值
valueForKey: 取值
setValue:forKeyPath: 相当于 [[setValue:forkey ] forkey]
valueForKeyPath:
3.KVO
NSkey value Observing
是基于KVC实现,建立在KVC之上,用于观察一个值的变化,下面是值改变的回调方法:
- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context