@objc dynamic
-
KVO(Key-Value-Observing)Swift 2019. 9. 20. 17:49
객체의 어떤 값이 변경되었을 경우 이를 감지하기 위해 사용한다. KVO는 변수에 코드를 붙여 변수가 변경될 때마다 코드가 실행되도록 하는 방법이다. property observers(willset , didSet)과 아주 유사한데 KVO는 타입 정의 밖에서 observe를 추가한다는 점이 다르다. KVO는 순수 스위프트 코드로는 그리 좋지 않은데, Objective-c 런타임에 의존하고 있기 때문이다. 그래서 NSObject 를 상속받기 위해 @objc 를 반드시 붙여줘야 한다. 특히 KVO는 속성 각각에 @objc dynamic 을 붙여줘야 한다. dynamic 은 objective-c 의 문법의 하난데, 특정 method나 function의 구현을 objective-c 런타임에서 하겠다고 결정하는 것..