Câu hỏi phỏng vấn Objective-C
Câu hỏi

What is Key-Value-Coding and Key-Value-Observing in Objective-C?

Câu trả lời

Key-Value Coding (KVC) and Key-Value Observing (KVO) are two powerful features in Objective-C that allow for dynamic access and observation of object properties.

Key-Value Coding (KVC):

  • KVC allows you to access an object's properties using strings instead of direct instance variables or properties[1][2].
  • This enables runtime flexibility, as you can fetch or change a property using a string that corresponds to the property name[5].
  • For example, you can use KVC to set a value for a key path like person.address.city without needing to write code to access each nested object directly[2].
  • KVC is commonly used in frameworks like Core Data and Cocoa Bindings to simplify data access and binding[2].

Key-Value Observing (KVO):

  • KVO enables an object to observe and be notified of changes to properties of another object[1][2][3].
  • To use KVO, an object registers itself as an observer of a specific key path on another object[3].
  • Whenever the observed property changes, the observing object's observeValueForKeyPath:ofObject:change:context: method is called with details about the change[3][4].
  • This allows for reactive programming patterns, ...
middle

middle

Gợi ý câu hỏi phỏng vấn

senior

Why delegate is never retained?

expert

What sending a message to nil means and how is it actually useful?

senior

What is the difference between NSMapTable vs NSDictionary ?

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào