개발자들
사이에서 어려운 코드에 대한 선호가 조금은 있는 듯 하다. 현재는 대중 대상의 생성형 AI 강의와 비전공자 직장인/자영업자 대상의 AI를 최대로 활용하는 파이썬 프로그래밍 강의를 주로 하고 있어서 현업의 분위기까지는 잘 모르겠으나, 예전에 JAVA 프로그래밍을 할 때는 어려운 코드에 대한 선호를
희미하게 감지할 수 있었다.
너무 쉽고 이해하기 쉬운 솔루션을 개발하면, 그거 누가 못하나 하는 시선으로 보는 사람들이
있었다. 대학에서도 마찬가지다. 연구 논문에 무언가 어려운
접근 방법과 이론이 잔뜩 써 있어야 잘 쓴, 가치가 있는 논문으로 보인다. 간단히 해결할 수 있는 방법이 명백하게 있음에도 말이다.
이해하기 쉬운 코드를 작성하는 것이 얼마나 어려운 일인지, 문제를 복잡하고 어렵게 해결하지
않고 간단하고 효율적으로 해결하는 것이 얼마나 많은 지식을 요하는 일인지 모르는 것 같다.
이 책은 현직 LINE 개발자가 쓴 책이다. LINE 일본인
개발자와 LINE 한국인 개발자가 협업하여 썼기 때문에 가독성이 좋다.
예시로 들고 있는 소스 코드는 안드로이드 앱 개발에 쓰이는 코틀린 소스다.
코틀린은 비교적 최근에 앱 개발에 쓰이기 시작했기 때문에 나처럼 예전에 안드로이드 개발을 했던 사람이라면 친숙하지 않을 수 있다. 그런 사람들을 위해 뒷부분에 코틀린 필수 문법도 소개하고 있다. 코틀린을
다루어 보지 않은 사람도 개발 경험이 있다면 충분히 이해할 수 있다.
이 책은 네이밍, 주석, 함수, 소스 코드 내의 개별 요소 간의 결합도, 프로그램 설계에 필요할
수 있는 상태 전이에서 어떻게 하면 가독성이 좋은 소스 코드를 작성할 수 있는지 상세히 설명한다. 마지막으로
코드 리뷰 프로세스에 적용하면 좋은 팁들을 소개한다.
코틀린은 다른 프로그래밍 언어에서 가지지 않은 성격들을 갖고 있다. 그러나 이 책에서는
그러한 문법은 배제함으로써 더욱 다양한 언어의 개발자들이 이 책을 읽고 이해하고 적용할 수 있도록 했다.
코딩 강의를 하면서도 입문/초급 단계에서부터 어려운 소스 코드를 작성하시는 분들을 본다. 이 분들이 어려운 소스 코드를 선호하시는 것인지, 쉬운 소스 코드를
작성하는 방법을 모르시는 것인지까지는 모르겠다. 그러나 그리 바람직하지 않은 것만은 분명하다.
앞으로의 강의에 이 책의 내용을 녹이고 싶다. 개발자라거나, 코딩에 관심있는 사람들이라면, 또한 프로그래밍 언어를 다루어 본
사람이라면, 또는 나처럼 코딩 강의를 하는 사람이라면 일독할 만 하다.
![](https://image.aladin.co.kr/Community/paper/2024/0509/pimg_7938261774288290.jpg)