概念
KVO全称KeyValueObserving,是Objective-C对观察者设计模式的一种实现。允许对象监听另一个对象特定属性的改变,并在改变时接收到事件。由于KVO的实现机制,所以对属性才会好发生作用,一般继承自NSObject的对象都默认支持KVO。
相思形色露,欲掩不从心。
KVO全称KeyValueObserving,是Objective-C对观察者设计模式的一种实现。允许对象监听另一个对象特定属性的改变,并在改变时接收到事件。由于KVO的实现机制,所以对属性才会好发生作用,一般继承自NSObject的对象都默认支持KVO。
在OC的内存管理,其实就是引用计数的管理。内存管理就是在程序需要时程序员分配一段内存空间,而当使用完后将它释放。如果对内存资源使用不当,不存会造成内存资源的浪费,甚至会导致程序crash等。
KVC(全称key-value coding)键值编码。在iOS开发中,允许开发者通过key直接访问对象的属性,或者给对象的属性进行赋值,而不需要调用明确的存取方法。这样就可以在运行时动态的访问和修改对象的属性,而不是在编译时确定。
KVC的定义是通过对NSObject的扩展来实现的,定义在NSKeyValueCoding.h文件中,是一个非正式协议。
在开发过程中,也许会遇到需要对数组进行去重的相关处理。如果数组内只含有基础类型的数据时,你可以写两个for循环遍历,用下标取值做对比;当然也可以用集合Set(Swift),比较方便快捷,可以参照这篇文章:Swift 中超快捷去重方法(附集合Set的一点干货)。
但如果需要对model数组进行去重,该怎么做呢?请往下看~
我们在iOS开发中不可避免的要使用第三方开源库,而CocoaPods的作用就是使我们方便管理应用中的第三方开源库。CocoaPods的项目源码在https://github.com/CocoaPods/Specs上管理。