본문 바로가기
프로그래밍 놀이터/iOS

[Objective-C] Class Extension 으로 delegate 정의하기

by 돼지왕 왕돼지 2017. 7. 19.
반응형

 [Objective-C] Class Extension 으로 delegate 정의하기


class extension, class extension delegate, delegate, header, Private, private access level, [Objective-C] Class Extension 으로 delegate 정의하기, 확장성



-

header 파일에 delegate 를 표시하는 것은 확장성 측면에서 좋지 않을 수 있다.

그래서 꼭 header 파일에 delegate 가 들어갈 이유가 없다면 다음과 같이 Class extension 을 사용하면 된다.


// implementation file

@interface SomeClass() <Delegate1, Delegate2, Delegate3, … >


@end


@implementation SomeClass


@end



-

위의 방법으로 @interface 를 재정의하는 것을 class extension 이라고 하는데,

저 부분에 들어가는 내용들은 private access level 이라고 보면 된다.

저 안에 정의된 것들은 해당 클래스 내부에서만 사용할 수 있다.


꼭 delegate 뿐만 아니라, public 으로 노출시키고 싶지 않은 녀석들도 모두 class extension 방법으로 숨길 수 있다.




반응형

댓글