Objective-C Class Category의 구현체에서는 @synthesize keyword를 사용하면,
아래와 같이 에러가 뜬다.
카테고리에서 @property를 선언하는것은 되는데, @synthesize하는것은 안된다.
일단 이게 왜 필요 한가 ?
Objective-C에서는 Private개념이 따로 없고, 저런식으로 Category를 이용해서 Private Interface를 사용하는데,
내부에서만 사용하고 싶은 변수가 있을때, @property를 사용할 수 없으면, setter/getter를 손코딩 해야 하는데, 그건 참 귀찮은 일이다.
이에 대한 해결책은 의외로 간단하다.
@property는 Private Category 선언부에서 선언하고,
@synthesize는 Main 선언부에서 선언하는것이다.
흐음.. 왜 이렇게 문법적으로 막혀있는지는 아직 잘 모르겠다 -_ -