iOS_KVO存在的坑

KVO:键-值观察,来源于一种设计模式:观察者模式。

观察者模式

所有的设计模式最终目的都是一个,就是要解耦。解耦:是指任何模块之间不存在硬关联,都是可以对关联进行修改与替换。这是提供系统的可扩展性和可维护性的基础,降低模块、组件之间的耦合度是开发人员应该牢记的一个编程准侧。

观察者模式是一种行为型设计模式。行为型设计模式讨论的是模块实体在运行过程中的行为模式,重点在于行为动作,而观察者模式说的就是某个模块实体发生变化所引起其他模块的行为动作。

观察者模式存在两种角色

角色1:被观察者(Observed Object)
角色2:观察者(Observers)

在iOS开发,使用KVO的时候,很多请情况下要求观察者在对象销毁之前取消对某一个被观察者的观察行为,需要操作:
A(被观察者) remove B(观察者)
那么有一些问题存在:
1. 是否B (观察者)是否对A(被观察者)实施过观察行为。
2. A(被观察者)的观察者容器中是否存在B(观察者)。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值