iOS KVO概述(刚刚)
2015-07-28 14:37
344 查看
面试中经常会被问到:什么是KVO?这个问题既然出现概率这么大,那么我们就来详细讲一讲到底什么是KVO。下次再有面试官问你的时候,你就可以娓娓道来,以彰显高逼格
问:什么是KVO?
答:KVO是Key-Value Observing的缩写。它提供一种机制,当指定的对象的属性被修改后,则对象就会接受到通知。简单的说就是每次指定的被观察的对象的属性被修改后,KVO就会自动通知相应的观察者了。
如果你能这样回答,面试官一定不会说你错的,这就是KVO的原理。但是如果你能说出KVO的好处,那一定能赢得面试官的刮目相看。比如:
使用KVO最直接的好处就是可以减少代码量。
KVO是观察者设计模式中的一种,有利于业务逻辑于视图控制之间的解耦。
更深刻的了解KVO,你可以动手写一个小demo思路如下:
定义一个对象People,分别有name和age属性
监听People的age属性
定义一个UIButton,在button的点击方法里面,去改变People的age。
你就可以收到age改变时发出来的通知
在对象销毁的时候,移除通知。
概述
问:什么是KVO?答:KVO是Key-Value Observing的缩写。它提供一种机制,当指定的对象的属性被修改后,则对象就会接受到通知。简单的说就是每次指定的被观察的对象的属性被修改后,KVO就会自动通知相应的观察者了。
如果你能这样回答,面试官一定不会说你错的,这就是KVO的原理。但是如果你能说出KVO的好处,那一定能赢得面试官的刮目相看。比如:
使用KVO最直接的好处就是可以减少代码量。
KVO是观察者设计模式中的一种,有利于业务逻辑于视图控制之间的解耦。
更深刻的了解KVO,你可以动手写一个小demo思路如下:
定义一个对象People,分别有name和age属性
监听People的age属性
定义一个UIButton,在button的点击方法里面,去改变People的age。
你就可以收到age改变时发出来的通知
在对象销毁的时候,移除通知。
相关文章推荐
- iOS 发布证书申请
- iOS多线程的初步研究(三)-- NSRunLoop
- iOS协议里面可以定义成员变量和属性吗?(刚刚)
- iOS下载图片并显示进度
- iOS开发-优秀博客-实用技巧
- iOS设置导航与其标题的颜色及字体大小和系统默认TabBar的相关设置与使用方法
- iOS开发的一些奇巧淫技
- iOS地图定位使用几个小功能(刚刚)
- 【iOS发展-44】通过案例谈iOS重构:合并、格式化输出、宏观变量、使用数组来存储数据字典,而且使用plist最终的知识
- ios--c DAY_1
- Nagios 监控
- iOS调用系统发短信功能详解(刚刚)
- iOS Animation详解
- iOS开发使用代码创建一个Label控件
- ios开发—利用xcode tabbed模块快速开发标签栏应用
- iOS 数据请求 GZip数据压缩和解压缩问题
- IOS NSString比较,截取,NSLog,NSRang,isEqualToString,stringWithFormat
- iOS utf-8和 url encode
- js调用oc方法(ios自学笔记)
- iOS开发系列–音频播放、录音、视频播放、拍照、视频录制