Key-Value Coding Programming Guide - Adopting Key-Value Coding - Handlinig Non-Object Values기본적으로 KVC이 제공하는 wrap and unwrap에 의존해서 사용합니다. (representing Non-Object Value.) 그러나 non-object properties에 nil이 저장 될 때는 대비해서 기본 구현을 오버라이드 할 수 있습니다. !Note스위프트에서는 모든 프로퍼티가 객체이기 때문에 이 장에서 나오는 내용은 objc에만 적용됩니다. KVC를 사용하는 객체가 setValue:forKey: 메시지를 받을 때 setValue로 nil이 들어오고 key에 해당하는 프로퍼티가 객체가 아니면 setNilValueForKe..
Key-Value Coding Programming Guide - Adopting Key-Value Coding - Defining Collection Methods표준 이름 규칙을 따르는 접근자나 인스턴스 변수를 만들면, KVC 프로토콜의 기본 구현은 그걸 사용 할수 있습니다. 이것은 일대다인 콜랙션 객체에도 적용됩니다. 그러나, 콜랙션접근 자 메소드를 만들면 다음에 나오는 내용을 할 수 있습니다. - Model to - many relationships with classes other than NSArray or NSSet.collection methods를 만들면, key-value getter의 기본구현은 proxy 객체를 리턴합니다. 이 객체는 NSArray 또는 NSSet 메시지에 반응하는 ..
Key-Value Coding Programming Guide - Adopting Key-Value Coding - Achieving Basic Key-Value Coding Compliance객체에 KVC를 적용할 때, NSObject나 NSobject를 상속받은 객체를 상속받아서 NSKeyValueCoding 프로토콜의 기본구현을 사용합니다. 기본 구현은 차례대로 개발자가 정의한 객체 인스턴스 변수(이하, ivars)와 접근자 메소드에 에 따라 작동합니다. ivars나 접근자 메소드는 특정 패턴에 따라 이름이 지어집니다. 이렇게 하면 KVC 메시지를 받을 때 key에 대응 할 수 있습니다. @preperty지시자를 이용해서 프로퍼티를 선언하면 간단히 오브젝트비 C의 표준 패턴을 따를 수 있습니다. 그..