우당탕탕 우리네 개발생활

<클린코드>에 대해 정리하기 전에... 본문

tech

<클린코드>에 대해 정리하기 전에...

미스터카멜레온 2024. 5. 28. 08:42

왜 <클린코드>를 공부하기로 결심했나?

근래 <객체지향의 사실과 오해>와 관련하여 블로깅했다. 워낙 바이블과 같은 책인지라 그저 중요하다고 표시했던 부분들을 요약해서 정리했다(거의 대부분을 밑줄치고 메모하면서 읽었다는 게 함정이라면 함정이다). 어찌 됐건 블로그에 의식적으로라도 정리를 하다 보니 자연스럽게 중요한 부분들을 한 번 더 정리할 수 있게 되었다. 첫 부분에 이해가 안 되면서 넘어갔던 부분들이 전체를 다 읽은 후 그 배경으로 다시 보니 이해가 되는 경우들도 많아서 블로깅을 통한 생각정리의 과정이 굉장히 값어치 있었다. 

 

배드민턴이라는 스포츠가 생각난다. 우리 삶에 비교적 가까이 있고 남녀노소 누구든지 즐기기 쉽다. 그저 적당한 높이에서의 셔틀콕을 땅에 닿기 전에 쳐서 상대편으로 넘겨주면 된다. 그렇기에 별다른 가르침없이도 곧잘 입문하여 즐기게 된다. 문제는 이러한 경험을 믿고 좀 더 수준을 높여갈 때 생긴다. 특히나 '동호회'라는 곳에 가게 된다면 지금까지 즐겨왔던 스포츠와는 아예 색다른 스포츠를 경험할 수 있게 된다. '하이클리어', '드라이브', '스매시, '드랍' 등 수많은 전문 용어들이 등장하고 자세 또한 정석이라고 불리는 자세들을 배워야 한다. 이렇게 모든 기본기를 갖추게 되면 비로소 그 수준에 발을 담글수 있게 된다. 이때부터는 기본기라는 피드백요소가 생기는데 기준이 명확하여 무엇이 부족하고 그래서 어떻게 고쳐야 하는지 방향성이 제시된다. 비로소 이제부터 노력이라는 것이 최대의 효과를 발휘하게 되고 유의미해진다. 그저 한때의 가볍게 즐겼던 경험만을 의지하여 기본기를 습득하지 않은 채 배드민턴을 지속하게 된다면 운동능력이 아무리 좋더라도 조금이라도 기본기를 습득한 사람을 절대 이길 수 없게 되고 노력이 무의미해진다.

 

개발자에게 <클린코드>는 개발자 커뮤니티에 합류하기 위한 '기본기'라고 생각했다. 여기저기서 배운 지식들을 통해 어찌저찌 코딩을 하고 있다고 하더라도 절대 기본기를 바로 잡고 피드백 요소를 명확히 갖춘 사람들의 발끝이라도 따라가기는 쉽지 않겠다고 판단했다. 그래서 집중하여 기본기를 연마하기로 했다. 내 기준에선 좀 늦은 스타트라고 생각하지만 뭐 어떤가. 오히려 다양하게 구르면서 경험하며 쌓아왔던 내 방식과 지식들이 얼마나 잘못됐었는지 또는 의외로 잘하고 있었던 부분은 무엇인지를 더 몰입하여 피드백할 수 있는 기회라고 생각하여 설레는 마음이다. 이미 <리팩터링 2판>(아직 블로깅하지 못했다.) 과 <객체지향의 사실과 오해>를 공부하면서 멋진 세계를 경험했기때문에 더욱 설레는 마음이다.

 

<클린코드>는 수많은 개발자들의 입에 오르내리는 바이블과 같은 책이다. 이 책이 재밌는 것은 개발자들 사이에서 내용을 통한 갑론을박이 다양한 부분에서 이루어진다는 점이다. 이렇게 갑론을박을 나누고 있는 개발자들은 적어도 <클린코드>를 한 번이라도 제대로 공부해 본 사람들이겠지? 부디 그러길 바란다. 단편적인 무언가를 보거나 듣고 그것에 대해 논쟁을 하는 것은 경솔한 행위라고 생각하기 때문이다. 기본기에 대해 제대로 연마하고 이를 통해 훈련해 보며 자신에 맞게 각색하는 사람들은 이러한 논쟁을 할 자격이 충분하다. 나 역시 기본기를 열심히 갖춰 나만의 논리를 만들어 가고 싶다. 

앞으로의 계획

스터디를 시작했다. 일주일간 정해진 분량을 공부하면서 기록했던 부분들을 나누기로 했다. 나누기위해선 생각정리가 필요한데 기왕이면 블로깅을 하면서 생각을 정리하기로 마음먹었다. 내용이 어렵고 많은 장이 있는 반면 가볍게 넘어갈 수 있는 장들도 있어서 상황에 맞게 형식에 구애받지 않고 작성해 볼 예정이다. 이번에도 중요하다고 생각하여 밑줄을 긋거나 메모했던 내용들을 위주로 정리하려고 한다.

마무리

개인적으론 5.22(수)부터 공부를 시작하였고 5.26(일)에 본격적으로 스터디의 막을 올렸다. 예정대로라면 딱 한 달이라는 기간이 걸릴 것 같은데 치열하게 집중해 볼 예정이다. 이번에도 블로깅을 통해 생각정리를 더 잘할 수 있는 좋은 효과를 누릴 수 있었으면 좋겠다.