Swfit/짧은 정리2 Selector란? Selector란?UIButton을 누르면 어떤 동작을 수행하게 할 것인지 action을 추가할 때 보면 `#selector`구문을 사용해서 사용될 method를 알려주게 됩니다. 이 selector는 method 이름을 알려주는 방식이고, class나 struct 내부에 정의된 method 이름을 지칭합니다.왜 selector를 이용해야 할까요? Swift와 Obj-c 간의 bridge 역할을 수행해 줍니다. 즉, Objective-C 기반의 코드를 Swift에서 사용하기 위한 방식들 중 하나입니다. selector에 들어갈 수 있는 method는 반드시 `@objc`를 앞에 붙여주어야 하는데, 이 attribute를 붙여주어야만 Objective-C runtime에 접근이 가능해지기 때문입니다.언제 .. 2025. 4. 3. 저장프로퍼티를 extension에 정의할 수 없는 이유 Extension은 class, struct, protocol, enum에 사용이 가능한 기능으로, 기존 타입에 새로운 기능을 추가하도록 도와줍니다. 직접적인 코드 접근 권한이 없는 프레임워크나 라이브러리 등의 기능을 확장할 수 있게 해주어 매우 유용하게 사용이 됩니다. 이런 extension에는 저장 프로퍼티를 사용할 수 없다는 제한이 있습니다. 그 이유는 기존 타입의 추가적인 메모리를 사용할 수 없다는 특성 때문입니다. 기존 타입의 추가적인 메모리를 사용하면, compile 시 instance를 생성할 때 문제를 일으킬 수가 있다고 합니다. 저장 프로퍼티는 추가적인 메모리를 요구하는 프로퍼티이기 때문에 compile 시 문제를 야기하게 되고, 그렇기 때문에 extension 내부에 저장이 불가능 합니.. 2024. 4. 8. 이전 1 다음 반응형