2010. 7. 24. 15:28
xCode에서 단축키로 현재 method의 시작과 끝에 NSLog를 삽입하는 Utility - 2 개발 - iPhone/개발 환경 구축2010. 7. 24. 15:28
아래 이전 글에서 NSLog를 삽입하는 Automator를 소개하고 잘 사용중인데 아주 약간 불편한게 있어서 수정하고 공유합니다.
2010/07/22 - [개발 - iPhone/개발 환경 구축] - xCode에서 단축키로 현재 method의 시작과 끝에 NSLog를 삽입하는 Utility
원저작자처럼 NSLog(@">>> Entering %s <<<", __PRETTY_FUNCTION__);로 사용할 경우, __PRETTY_FUNCTION__가 Preprocessor의 전처리기이다보니 실제 NSLog를 호출하는 Class의 하위 Class에서는 Runtime시에 어떤 Class가 실행되는지 알 수 없더군요.
그래서 아래처럼 수정했습니다.
NSString *entryString = @"\tNSLog(@\"##### Entering %@-[%s] [%@] [%@]\", self,__PRETTY_FUNCTION__,self,self);";
NSString *exitString = @"\tNSLog(@\"----- Leaving %@-[%s] [%@] [%@]\", self,__PRETTY_FUNCTION__,self,self);";
__PRETTY_FUNCTION__전의 self는 runtime Class를 알기위함이고, 이 후의 self는 실제 Log를 출력할 때 관심있는 변수를 출력하기위해 미리 공간을 마련해둔겁니다. 어짜피 이전 글대로 Project 세팅을 했으면 Release시엔 NSLog가 출력되지 않을 것이기에 디버깅하는 동안엔 좀 더 많은 내용을 간편하게 출력하고 싶더군요. ^^;
실제 효용성이 있는진 모르겠지만, 2번 입력방지하는 부분에선 아래 문자열을 이용해 검사하도록 했습니다. 그런데 소스 코드 보면서 작업할건데 2번입력할 일이 있기나한지 모르겠네요. ㅎㅎ
NSString *entryMask = @"\tNSLog(@\"##### Entering %@-[%s] [%@] [%@]";
NSString *exitMask = @"\tNSLog(@\"----- Leaving %@-[%s] [%@] [%@]";
변경한 소스와 Snow Leopard에서 컴파일한걸 같이 올립니다.
2010/07/22 - [개발 - iPhone/개발 환경 구축] - xCode에서 단축키로 현재 method의 시작과 끝에 NSLog를 삽입하는 Utility
원저작자처럼 NSLog(@">>> Entering %s <<<", __PRETTY_FUNCTION__);로 사용할 경우, __PRETTY_FUNCTION__가 Preprocessor의 전처리기이다보니 실제 NSLog를 호출하는 Class의 하위 Class에서는 Runtime시에 어떤 Class가 실행되는지 알 수 없더군요.
그래서 아래처럼 수정했습니다.
NSString *entryString = @"\tNSLog(@\"##### Entering %@-[%s] [%@] [%@]\", self,__PRETTY_FUNCTION__,self,self);";
NSString *exitString = @"\tNSLog(@\"----- Leaving %@-[%s] [%@] [%@]\", self,__PRETTY_FUNCTION__,self,self);";
__PRETTY_FUNCTION__전의 self는 runtime Class를 알기위함이고, 이 후의 self는 실제 Log를 출력할 때 관심있는 변수를 출력하기위해 미리 공간을 마련해둔겁니다. 어짜피 이전 글대로 Project 세팅을 했으면 Release시엔 NSLog가 출력되지 않을 것이기에 디버깅하는 동안엔 좀 더 많은 내용을 간편하게 출력하고 싶더군요. ^^;
실제 효용성이 있는진 모르겠지만, 2번 입력방지하는 부분에선 아래 문자열을 이용해 검사하도록 했습니다. 그런데 소스 코드 보면서 작업할건데 2번입력할 일이 있기나한지 모르겠네요. ㅎㅎ
NSString *entryMask = @"\tNSLog(@\"##### Entering %@-[%s] [%@] [%@]";
NSString *exitMask = @"\tNSLog(@\"----- Leaving %@-[%s] [%@] [%@]";
변경한 소스와 Snow Leopard에서 컴파일한걸 같이 올립니다.
'개발 - iPhone > 개발 환경 구축' 카테고리의 다른 글
CrystalClear Interface A Theme for Mac OS X (0) | 2010.11.26 |
---|---|
Xcode에 UserScript 추가 (synthesize자동 적용, Xcode 화면 꾸미기) (0) | 2010.10.18 |
xCode에서 단축키로 현재 method의 시작과 끝에 NSLog를 삽입하는 Utility (0) | 2010.07.22 |
cocos2d 0.99.2 개발 환경 구축 - 설치 (4) | 2010.05.01 |
cocos2d 0.99.2 개발 환경 구축 - 라이센스 정책 (6) | 2010.05.01 |