Thinking about KVC/KVO

作者:ani_di 
版权所有,转载务必保留此链接 http://blog.csdn.net/ani_di

Thinking about KVC/KVO


1. 什么是KVC/KVO

KVO:Key-Value Observing 
KVC:Key-value coding

2. 如何使用

Key-value由NSObject实现,因此所以ObjC的对象都可以使用。 
它提供了一种使用‘名字’访问对象属性的方法,如同所以对象都是NSDictionary。Key还支持Key path和Collection operator。Key-Value Coding Programming Guide。 
KVO是在Key-value的基础上增加了Observing,用户可自定义当对象发生变化时的响应。

3. KVO有什么用

KVO可以减少很多Model与View之间数据同步所需要的代码,通常这些代码在Controller中实现。Interface builder的Binding inspector可以非常方便的完成界面控件绑定。 
对于非UI程序,观察者模式同样适用。这里有一个官方例子

4. 什么场合适合用KVC

KVC适合数据驱动的场景。缺点是KVC数据访问比较慢,修改数据要遵从相应的协议,对key的合法性检查由用户承担。

其它

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值