개발을 하다보면 가끔 OSStatus (이게 왜 아직 있는지는 모르겠다만...) 값을 리턴하는 함수들을 만나게 되는데 그 값이 정확히 무슨 의미인지 확인하는게 좀 노가다성이...
해당 함수와 관련된 내용의 경우 도큐먼트 어디 구석엔가는 define되어있지만, 가끔 생뚱맞는 error를 만나는 경우가 있는데 이때는 이 값만 보고 이게 정확히 무슨 에러인지 판단이 힘든 경우가 있다.
이때 터미널에서 macerror -errorNo 이렇게 해주면 대충이나마 왜 에러가 났는지 확인해볼 수 있다.
오래전에 CCV방법론(?)에 대해서 한번 이야기 한적이 있었는데 오늘 다시 그때 이야기에 이어 관련된 이야기를 하고자 한다.
최신의 개발 스타일은 이제 더 이상 단순히 에디터와 개발자의 순수한 노력에만 의지 하지 않고 있다.
개발을 조금 더 체계적으로 지원해주는 많은 툴들을 이용하는데, 특히 코드의 품질을 유지하기 위해 CI를 위한 Jenkins(Hudson)같은 툴도 많이 이용하고 있고 그에 더불어 Static Analysis, Unit Test, Coding Convention Checking, Cyclomatic Complexity 툴등 다양한 도구들을 이용하고 있다.
"CCV방법론 - 중복의 해악"이라는 글에서 이미 이야기 했듯이 코드의 중복은 수만은 문제를 일으키고 리팩토링을 통해 코드를 최상의 상태로 유지하기 위해서는 코드의 중복을 확인 하는 일은 매우 중요하다. 그래서 그런데 사용할 툴을 Code Clone Detector라는 이름으로 개발하는 사람들이 있는데 C, C++, Java같은 언어들을 지원하는 툴은 이미 많이 나와있지만(PMD http://pmd.sourceforge.net/cpd.html, 관심있는 분들은 한번 보셔도 좋을듯) Objective-C에서 사용할 수 있는 것은 찾기 쉽지 않았다.
Mac OS / iOS 개발에 있어서 다른 툴들은 다 어떻게든 구해보겠는데 Code Clone Detector는 Simian이외에는 아직 찾지 못했다. Simian은 비상용, 오픈소스 프로젝트에 사용하는 것은 무료이지만 그 외의 용도에서는 라이센스에 따라 최소 $99이상의 가격이 책정되어있다.
갑자기 duplicated code detection에 대해서 관심을 가지기 시작한 이유는 엉뚱하게도 다른 이슈 때문이었지만, 평소에도 command키와 c키, 그리고 v키를 키보드에서 뽑아버리고 싶은 충동을 느껴왔었다.
심지어는 code clone이 너무나 심각해져서 코드를 조금만 건드려도 여기저기서 문제를 일으키는 코드도 많이 봤다. 소위 전문가(?)들이 작성한 코드가 그러니 말 다했다.
결국 그런 코드를 정리하거나 컨설팅해줘야 하는 입장에서는 그런류의 일을 효율적으로 할 수 있는 도구가 필요하다. 하지만 아직 정말 이정도면 좋다라는 툴을 찾지는 못했다.
애플은 xcode에 엉뚱한 것을 자꾸 넣지말고 이런거 좀 넣어주면 안되나…
그러다보니 글들이 푹푹 삭아가는데, 오늘은 방문자 통계를 보다보니 갑자기 당황스러워 지는 것이, 아주 오래전 글, 그러니까 지금 기준에서 보면 조금은 쓸데없어지거나 내용이 바뀔 수도 있는 글들로도 계속해서 사람들이 유입되고 있는 것이다.
어이쿠. 검색엔진이 해당 글이 얼마나 낡은 글인지도 함께 알려주면 참 좋겠다만...
뭐, 그것 뿐이겠는가? 이 온라인 세상에는 엉터리 정보도 얼마나 넘쳐나지 않는가... (나도 마찬가지)
하여튼 그렇다고 해서 나의 게이른 블로깅을 어찌 할 수 없을듯 하긴 하지만 그래도 조금 쓰긴 해야 하는 것일까?



