클린 코드(Clean code) Day 1
독서/노개북

클린 코드(Clean code) Day 1

 

 

🔖오늘 읽은 범위 : 1장 깨끗한 코드


 

 

🙂 책에서 기억하고 싶은 내용

 

p.4 나중은 절대 오지 않는다. (later equals never)

 

p.7 그들이 일정과 요구사항을 강력하게 밀어붙이는 이유는 그것이 그들의 책임이기 때문이다. 좋은 코드를 사수하는 일은 바로 우리 프로그래머들의 책임이다.

 

p.9 깨끗한 코드는 한 가지를 제대로 한다. 

 

p.14 중복을 피하라, 한 기능만 수행하라, 제대로 표현하라.

 

p.18 시간이 지나면서 엉망으로 전락하는 코드가 한둘이 아니다. 그러므로 우리는 적극적으로 코드의 퇴보를 막아야 한다.

 

 

🤔 오늘 읽은 소감은? 떠오르는 생각

 

작년 말에는 정말 바쁜 하루하루를 살았었다. 어쩌다 보니 회사의 메인 서비스의 새로운 기능 개발에 참여하게 되었는데, 이때 정말 많은 생각이 들었던 것 같다. 프로젝트에 투입되고 가장 먼저 한 일은 프로젝트의 구조를 살펴보고 다른 개발자들의 코드를 이해하는 것이었다. 솔직히 좀 당황스러웠다. 왜 이렇게 짠 거지? 이걸 이런 식으로 갖다 붙인다고?라는 생각이 저절로 들게 만드는 코드들의 향연이었다. 아무래도 메인 서비스인 만큼 오래전부터 개발되었던 프로젝트이고, 다들 시간에 쫓겨 그 누구도 이 프로젝트를 개선할 엄두를 내지 못하고 자신의 코드만 갖다 붙였던 게 문제 이리라. 이런 코드 무덤 안에서 나는 그래도 괜찮은 구조를 갖춘 코드를 작성해야지 라는 마음가짐으로 프로젝트를 시작했다.

 

결론만 말하자면 또 하나의 쓰레기를 만들어냈다. 계속 추가되고 수정되는 기획을 반영하다보니 중간부터 구조를 잘못 잡았다는 생각이 들었지만 시간에 쫓기고 있는 입장으로써 전면적인 수정을 할 용기가 없었고, 무작정 새로운 코드를 욱여넣을 수밖에 없었다. 내 손으로 직접 만들어낸 코드 무덤의 탄생이었다. 그때 나는 이 프로젝트에 참여했던 다른 개발자들을 이해함과 동시에 ‘그래도 돌아가니까 괜찮아’라는 자기 합리화를 했었다.

 

그래서 이 이야기를 왜 꺼냈냐면, 초장부터 내 정곡을 찔렀기 때문이다.

 

우리 모두는 자신이 짠 쓰레기 코드를 쳐다보며 나중에 손보겠다고 생각한 경험이 있다. 우리 모두는 대충 짠 프로그램이 돌아간다는 사실에 안도감을 느끼며 그래도 안 돌아가는 프로그램보다 돌아가는 쓰레기가 좋다고 스스로를 위로한 경험이 있다.

 

불과 얼마 전의 내모습이 이 책에 담겨있었다. 말 그대로였다. later equal never. 나중은 오지 않았다. 나는 가까스로 돌아가는 그 서비스를 뒤로한 채 새로운 프로젝트에 들어갔다.

 

솔직히 이 책을 통해 내 자신을 돌아보면서도, 그 프로젝트를 다시 리팩터링 할 자신은 없다(ㅎㅎ). 다만 내가 이와 같은 실수를 되풀이하지 않도록, 지금 진행하는 프로젝트에 애정을 가지고 나 자신이 납득할만한 ‘깨끗한 코드’로 가득 채우고 싶다.