Author: 켄트 벡 지음 / 안영회 옮김
출판사: 한빛미디어
Score /5: ⭐️⭐️⭐️⭐️⭐️
개발자로써 가장 어렵게 느껴지는 것은 리팩토링이다. 내가 작성한 코드가 다른 사람들(=개발자)들과의 의사소통에 문제가 없는지 또는 간결하게 썼는지 또는 비용 효율적인지 다양한 관점에서 접근하고 사색할 시간이 필요하다.
처음 시작은 어떻게든 짧은 기간안에 기능을 구현해야 하기 때문에 소위 말하는 스파게티 코드처럼 짜여지기도 한다. 이후에 바빠서 다른 기능을 만들다 보면 어느새 해당 코드는 잊혀지고 문제가 생겼을 때 다시 돌아보는 죽은 코드가 된다. 그리고 다시 돌아왔을 때의 절망이란 상상하기도 어렵다.
문제는 절망뿐 아니라 해당 코드를 다시 수정해야 하는데 어떤 의미 또는 어떤 의도를 가지고 구현했는지 전혀 이해가 안되는 것이다. 소위 개발자들이 '어?' 라고 하는 것을 경계하라고 하지 않던가? 그 말은 요즘 유머로도 쓰이는 것 같지만 그 본질은 어떤 코드를 작성하던지 어떤 프로세스로 코드가 흘러가는지 명확하게 이해하고 작성하란 말과도 같다.
이처럼 개발자가 작성하는 코드 그 자체는 말그대로 하나의 언어이자 글쓰기 그 자체다. 우리 주변에서도 글을 정말 맛깔나고 간결하게 잘 쓰는 사람이 있는가 하면, 간단한 의미조차도 장황한 글솜씨로 인해 의미 전달이 어려운 경우가 많다.
이렇게 코드를 작성하고 지속적으로 고쳐야 하는 것은 어떻게 보면 숙명과도 같다. 어제의 코드가 오늘의 정답이 아닐수도 있기 때문이다. 그런 의미에서 켄트 벡이 설명하는 이 책은 우리에게 당연한 얘기를 다시 풀어서 들려준다.
그렇다. 당연한 얘기다. 당연히 간결하게 작성해야 하고 주석 없이도 이해할 정도로 코드를 작성해야 하고...어떻게 해야 하고 등등. 우리가 이미 다 알고 있는 내용이다. 그럼에도 불구하고 우리는 이를 잊고 있는 경우가 많다.
이를 켄트 벡이 친절하게 다시 되짚어 주는 느낌을 개인적으로 많이 받았다. 우리의 친절한 이웃 스파이더맨처럼 또는 옆집 아저씨처럼 친근하게 코드를 잘 작성하는 법을 쉽게 설명하고 있다.
단순히 기능하는 코드를 작성하는 사람을 코더라고 한다. 프로그래머는 단순히 코드를 작성하는 것이 아니라 이 코드가 왜 필요한지 어떻게 하면 효율적으로 문제를 해결할지를 먼저 고민하고 그 답으로 코드를 작성한다. 우리는 이제 단순히 코더가 아니라 프로그래머가 되어야 하지 않을까? 이 책을 통해서 프로그래머로써 성장했으면 좋겠다. 나의 바람이기도 하고 이 책을 읽은 모든 개발자에게도 바라는 바램이다.
"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평임."
'책 리뷰' 카테고리의 다른 글
네트워크 인프라 자동화 리뷰 (0) | 2024.08.25 |
---|---|
실전 레디스 리뷰 (0) | 2024.06.23 |
쉽게 빠르게 익히는 실전 LLM (1) | 2024.03.25 |
밑바닥부터 시작하는 딥러닝 4 리뷰 (0) | 2024.02.25 |
데이터 메시 리뷰 (2) | 2024.01.07 |