1장. 깨끗한 코드
코드는 사라지지 않는다.
시대가 지나가며 언어들은 점점 더 추상화된 API를 제공하고 있고,
Copilot처럼 코드를 대신 작성해주는 도구도 등장하기에 이르렀습니다.
그래서 곧 더이상 코드를 작성할 필요 없는 시대가 올 것이라 주장하는 사람들도 있지만,
책에서 저자는 코딩은 기계가 이해할 수 있을 정도로 명확하고 상세하게 요구사항을 작성하는 작업이고,
코드는 상세한 요구사항들이라고 합니다.
인간조차도 고객의 모호한 감정과 요구사항 만으로는 성공적인 시스템을 구현할 수 없고,
하물며 기계는 그보다 더 명확한 요구사항이 필요하므로 코드는 사라지지 않을 것입니다.
좋은 코드를 작성해야 하는 이유
좋은 코드와 구조는 생산성과 직결됩니다.
실제로 제품을 개발하다보면, 처음에는 새로운 코드를 짜는 일이 대부분입니다.
하지만, 시간이 지나며 기능이 변경되거나, 중간에 개발자가 바뀌는 상황이 생기면, 어느 순간부터는 새로운 코드를 작성하는 시간보다 이전에 구현된 코드를 읽는 작업이 더 많아지게 됩니다.
좋은 코드로 작성되어온 제품이라면, 이렇게 코드를 읽는 과정이 수월하고 고통스럽지 않겠지만, 나쁜 구조와 코드는 이런 작업을 더 어렵고, 시간이 오래걸리는 작업으로 만듭니다.
나쁜 코드를 읽고 작성하는 코드는 또 다른 나쁜 코드가 될 가능성이 높아서, 제품은 나쁜 코드가 점점 많아지고 결국 생산성이 0에 수렴하는 상황이 오게 됩니다.
시간이 지나며 코드가 쌓여도 생산성을 잃지 않기 위해, 우리는 깨끗하며 좋은 코드를 작성하려고 노력해야 합니다.
으~~음! Clean Code! 오늘도 잘 먹고 갑니다.
어떤 코드가 깔끔한 코드인지 다음 장이 궁금해지네요.