프로젝트가 2년이 넘어가는데 스파게티 코드인데다가 진도를 뽑기위해 대충 만들고 넘어간 코드가 많다보니
이젠 도대체 내가 뭘 만들었는지도 가물가물해지고 있다.
도대체 무슨 클래스가 뭘하는지도 모르겠고 왜 이렇게 구현했는지 주석하나하나 뜯어보는 것도 일이라 Doxygen을 적용하기로 했다.
Doxygen은 개발자 출신분들은 다들 알고 계시는것 같은데, 나는 어떤 에셋 매뉴얼이 doxygen으로 생성된 걸 보고 존재를 알게 되었다. 자세한 설명은 다음 링크를 참고하자.
Doxygen 문법에 맞게 주석만 잘 적어주면 적용하면 SSD사용시 왠만한 프로젝트는 1분내에 문서 생성이 가능하다
요렇게 넣으면
짠~~ 요렇게 나온다
기본적으로는 public 멤버에 대해서만 만들지만 옵션값 EXTRACT_PRIVATE을 체크해주면 Private멤버에 대한 주석도 포함해서 문서를 작성해준다.
나는 내 코드에 대해 설명하려고 만드는거니까 private도 추가했다
재미있게도 claude가 중간중간에 주석에 넣을 글을 제안해주는데 아쉽지만 대부분 뻘소리라 거의 항상 다시 쓰는 편이다 ㅡ_ㅡ
아래 @pre 뒤의 회색부분이 Claude가 내 코드를 분석해서 제멋대로 작성한 precondition 내용.
틀린 말은 아닌데 내 코드는 스파게티라 저거말고도 precondition이 산더미란 말이다...ㅎ
이런 문서화 툴이 1인 프로젝트에 무슨 의미가 있나 싶긴한데
1인 프로젝트하다보니 주석을 개판으로 적어서 나중에 보면 내가 뭔짓을 했는지 알 수가 없게 만들어버리다보니
당분간 아예 doxygen으로 문서를 만든다는 생각으로 주석을 적는 습관을 들이면 좀 낫지 않을까 싶어서 도전해보았다.
언젠가 유지보수할때 도움이 되길
Lua는 동적 언어라 린터가 사실상 반필수인데 이 부분은 갓샵이 좀 부럽네.
오 뭐야 개쩔어
우리도 도입해봐야겠다 ㄳㄳ