【问题标题】:Can I get by by without ever using KVO? [closed]我可以在不使用 KVO 的情况下过日子吗? [关闭]
【发布时间】:2013-04-08 20:43:04
【问题描述】:

语法奇怪,但我想问一下,如果我不使用 KVO(Key Value Observation),应用程序是否无法执行某些操作/功能?

谢谢

【问题讨论】:

标签: ios objective-c key-value-observing


【解决方案1】:

Key Value Observing 提供了独特的功能和行为,并且对开发人员肯定有用,在同样的情况下,可以一瞥原本不透明的值。

例如,如果您想知道 Cocoa 中的动画的精确持续时间(否则为黑盒)(例如,键盘显示动画持续时间),我知道 KVO 是您可以确定的唯一方法.

除此之外,它对于编程涉及数据的应用程序来说是一种有用的模式(见图)。因此,它是开发人员工具包中的又一工具。

没有它你能过得去吗?当然。有很多工具你可以不用,而这一个需要一点点努力才能让你一开始就明白这一点。但是你应该避免它吗?不,我不这么认为——你为什么会这样?

【讨论】:

  • +1,虽然 KVO 不是 Objective-C 独有的!
  • 好点@JustSid——我会相应地更新答案。
【解决方案2】:

您几乎不需要 KVO。
只有当你需要一些特殊的东西,或者想规避 Apple sw 设计时。
而对于这少数情况,你会找到演示代码,所以不要太担心 KVO。

【讨论】:

  • 虽然我同意您很少需要 KVO,但随着应用程序复杂性的增加,它是一个很棒的工具。我不会将其描述为“规避 Apple sw 设计”很有用,因为如果你这样做,你可能做得不对。这是 Apple 提供的一种非常有用的自动通知技术。如果使用得当,它是有效且非常有用的。但我同意新开发人员通常不需要利用这个有点高级的功能。但如果你正在编写自己的 setter(无论如何你很少这样做),我建议你调用 KVO 方法。
猜你喜欢
  • 1970-01-01
  • 2010-09-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-04-29
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多