약 1년전만해도 남의 소스 코드 보는걸 굉장히 싫어 했다.
물론 지금도 처음 보기 시작할때는 정말 고통의 연속이다.
눈이 충혈되고, 짜증도 나고….. 쩝
그러다 때려 치기를 여러번, 드디어 고지를 점령했을때 그 느낌… ㅎㅎ
지금 이래저래 소스코드 뷰를 굉장히 많이 하고 있긴 하다.
그러면서 코드 리딩에 관한 책도 하나 발견해서 보고 있는데.
code reading : 오픈소스 관점에서 본 코드 읽기
그렇게 어려운 내용은 아니여서 수월하게 넘어가고 있는데, 책을 보면서 CD 안의 오픈 소스 코드를 훓어보고 꽤나 얻는게 많았다. 그리고 느낀건 고급 개발자로 넘어가기 위해서 꼭 거쳐야 하는단계가 코드 읽기구나 하는 생각을 했다. 물론 아무 소스코드나 읽어서는 안된다고 적혀있고 나 또한 그것에 공감한다.
그리고 코드가 잘 읽힌다는건, 내가 능력이 좋아 잘 읽는다기 보다는 그 코드를 짠 사람이 잘 짠거라는 말 정말 맞는 말이다.
저자가 비행기 탑승해서 어딘가로 갈때나 그 밖의 짜투리 시간에 오픈소스 코드를 출력해서 읽는 습관을 들였다는 부분을 보고 정말 배워야 될 부분이 아닌가 하는 생각을 했다. 또한 잘 쓰이는 오픈소스 코드들은 읽을 만한 가치가 있고, 배울게 무지 많다는것을 책의 짜투리 코드만으로도 느낄 수 있었다.
어느정도 프로그래밍 관련 서적을 다 봤고, 언어에 익숙해졌다 싶으면 해당 언어로 작성된 오픈소스 프로그램을 분석해 보는것이 한단계 업그레이드 되는 방법중에 하나가 아닐까 한다.
대부분 코드 안에서 쓰는 자료구조 및 자료형의 쓰임새는 거의 비슷하지만 어쩌다가 특이한 방법이나 기발한 방법을 발견하면 정말 기쁘지 않겠나?(책에 그런 방법들이 아주 일부분 나와 있지만 기발했다.)
머리속에 C 컴파일러를 집어 넣고, 에디터 띄워 놓고 코딩해 보면서 계속 끝까지 한번 쭉~ 봐야겠다.
저자가 일단, 스콧 마이어라는데에 땡깁니다. 일단 질러야할 듯.
그리고 행프 였나요 ? 임백준씨 책에서 그런 느낌의 글귀가 기억납니다. “다른 사람의 소스를 취미로 읽어볼 수 있는 정도는 되어야 하지 않을까” 라는 생각도 해봅니다.
앗~ 다시보니 저자가 스콧 마이어가 아니었군요 ^^ 편집자인가요 ? 전에 책에 얼핏 보았을 때에 잘못 본 모양이군요.
이 책 다 읽으신 후에 나중에 기회되시면
code complete 을 읽으시는건 어떨지요?
요번에 C++ 관련서 5권 산다고 이 책을 못샀는데..
많은 고수들이 추천하는 책이라..다음번에…
총알장전되고 나면 살 생각입니다 ^^
금요일 추천해 주신 책들 올 겨울 방학을 이용해서 봐야 겠습니다. 감사합니다. ^^
저도 한 5~6년전에 code complete 1판을 봤습니다. 이미 알고 있는 내용이었지만 꼼꼼히 짚어주는 데에 감동이었습니다. 고로 정은님 말씀대로 한번 읽어보셨음 좋겠습니다. 고감자님의 철학이라면 이미 갖고 계실 것이라는 생각이 들지만요. ^^;
코드 자체는 하나의 큰 철학서입니다. 왜냐하면 어떻게 구현했는지에 대한 호기심을 스스로 풀어가는 만드는 과정에서, 알게 모르게 자신의 코딩 규칙에 영향을 미칠 수 있기 때문입니다.
사실 훌륭한 코드는 누구나 다 알 수 있게끔 되어 있습니다. 뒤집어 보자면 자신이 만든 코드는 다른 사람으로 하여금 왜 어렵게 되어 있는지 많은 고찰이 필요하게 됩니다. 따라서 어디까지나 코드는 자신뿐만 아니라 추후 보게 될 후배들을 위해서라도 신경써야 할 필요가 있다는 의미를 되새겨 봄은 어떨런지요?
따라서 무엇보다는 좋은 코드를 배우는 것이 좋지만, 나 자신 스스로 어떻게 하면 도움이 되는 코드를 만들 수 있을 지 고민을 먼저 하는 게 필요할 거라고 생각합니다.
저두 이제 code complete를 봐야 할거 같습니다.
2년 전에 1판을 구입하고 그저 그러려니 하고 읽어 본 책이였는데, 아마도 지금 읽어보면 더 많은 의미로 나가오지 않을까 하는 생각이 드네요.
그때는 그걸 이해 할 수 있는 경험들이 없었을 거라는 생각이 듭니다.
겨울에 따뜻한 방바닥에서 배 깔고 보는 상상을 해보니 즐겁네요.
장문의 댓글 정말 잘 봤습니다. 왜 코드를 신경 써서 짜야 하는지 많이 깨닫고 있습니다. 배려 였군요… ㅎㅎㅎ