본문 바로가기

책거리

코드와 이야기의 공통점 - 클린 코드

'클린 코드'(로버트 C. 마틴)의 기술적인 내용을 배제 리뷰입니다.

 

'클린 코드'는 개발자에게 있어서 '코딩의 정석'이다. 개발자는 코드로 말한다. 그리고 그 코드를 잘 작성하는 것이 곧 개발 실력을 의미한다. '클린 코드'는 무엇이 좋은 코드이고, 좋은 코드는 어떻게 작성해야 하는지 설명한다. 간단한 로직을 위한 코드부터 시스템 설계를 위한 코드까지 코드 작성의 전반적인 내용을 사례와 함께 설명한다. 자바 프로그래밍 언어를 기반으로 하며, 따라서 객체 지향의 개념이 녹아들어 있다.

 

'클린 코드'는 한 번 읽는 것으로 충분하지 않다. 우선 배울 내용이 무수히 많다. 간단한 변수 및 함수 이름 작성, 주석 처리 방법, 시스템 설계 원칙까지 코드를 사용하는 모든 상황에서 좋은 코드 작성 방법을 설명한다. 특히 시스템 설계와 관련된 부분은 현업 개발자가 되어서 직접 경험하지 않으면 이해하기 어려운 내용이다. 따라서 반복적으로 읽으면서 좋은 코드를 작성하기 위해 필요한 지식을 상황에 맞게 배워서 활용하는 것이 필요하다.

 

하지만 결국 핵심은 코드는 사람이 읽는 것이기 때문에 깨끗하게 작성해야 한다는 것이다. 개발은 혼자 하지 않는다. 즉 다른 사람이 작성한 코드를 이해해야 하며, 내가 작성한 코드 역시 다른 사람에게 읽힌다. 동시에 과거에 자신이 작성한 코드를 다시 읽어야 하는 상황도 발생한다. 이처럼 코드는 사람이 읽기 때문에 좋은 코드는 사람이 읽기 쉽다. 클린 코드는 이처럼 사람을 위한 배려이다.

 

대가(master) 프로그래머는 시스템을 (구현할) 프로그램이 아니라 (풀어갈) 이야기로 여긴다.

프로그래밍 언어라는 수단을 사용해 좀 더 풍부하고 좀 더 표현력이 강한 언어를 만들어 이야기를 풀어간다.

 

코딩과 이야기는 전혀 어울리지 않는 조합으로 보인다. 하지만 둘의 공통점을 결국 독자이다. 읽는 사람이 코드(이야기)를 읽고 이해와 공감을 할 수 있어야 한다. '클린 코드'는 좋은 이야기를 작성하도록 동기를 부여하고 그 방법까지 제시한 친절한 안내자가 될 것이다.