'읽기 좋은 코드'에 대한 논의는 흔히 개인의 취항이나 관습의 영역으로 치부되지만, 사실 그 기저에는 인지과학적 원리가 작동하고 있습니다. 이 글은 개발자의 '직관'을 뇌과학적 관점에서 분해하고, 가독성이라는 추상적인 감각을 논리적인 구조로 분석합니다.

  1. 직관은 마법이 아닌 고도의 패턴 매칭 숙련된 개발자가 코드를 '보자마자' 나쁜 냄새를 맡는 것은 단순한 감이 아닙니다. 이는 뇌의 복측 선조체(Ventral Striatum) 가 과거에 학습된 수많은 코드 패턴과 현재의 코드를 실시간으로 대조하는 과정입니다. 즉, 직관은 논리가 생략된 것이 아니라, 너무나 빠르게 처리되어 의식의 표면 위로 논리적 과정이 드러나지 않는 '고속 연산'의 결과입니다.

  2. 작업 기억(Working Memory)과 인지 부하의 한계 인간의 작업 기억은 한 번에 3~5개 정도의 정보 단위(Chunk)만 처리할 수 있습니다. 가독성이 낮은 코드는 이 한정된 자원을 고갈시킵니다.

불필요한 인지적 점프: 선언부와 실행부가 너무 멀리 떨어져 있거나, 인과관계가 꼬여 있는 코드는 뇌가 현재 맥락을 유지하기 위해 지속적으로 '컨텍스트 스위칭'을 하게 만듭니다.

심리적 가시성: 코드가 한눈에 읽힌다는 것은 뇌가 별도의 해석 과정 없이 이미 알고 있는 패턴(Schema)에 해당 코드를 즉시 매핑했음을 의미합니다.

  1. 청킹(Chunking)을 활용한 코드 설계 뇌는 개별 데이터를 그룹화하여 하나의 단위로 인식할 때 효율이 극대화됩니다.

잘 설계된 함수와 모듈은 복잡한 로직을 하나의 '청크'로 추상화하여, 독자가 세부 구현을 잊고도 전체 맥락을 파악하게 돕습니다.

하지만 과도한 추상화는 오히려 '청크' 내부를 들여다봐야만 의미를 알 수 있게 만들어, 뇌의 해석 비용을 이중으로 발생시키는 '인지적 비효율'을 초래합니다.

  1. 뇌의 에너지 보존 법칙과 코드 일관성 뇌는 신체 에너지의 20% 이상을 사용하는 기관이며, 본능적으로 에너지 소모를 줄이려 합니다. 일관성 없는 네이밍이나 들쑥날쑥한 컨벤션은 뇌의 '예측 모델'을 깨뜨려 불필요한 에너지를 쓰게 만듭니다. 반면, 규칙이 명확한 코드는 뇌가 '자동 항법' 모드로 코드를 읽게 하여 피로도를 낮춥니다.

결론: 가독성은 동료의 뇌에 대한 배려 결국 좋은 코드 설계란 동료 개발자의 뇌가 '패턴 인식'에 사용하는 에너지를 최소화해 주는 인지적 설계입니다. 가독성을 높이는 작업은 단순히 코드를 예쁘게 만드는 것이 아니라, 협업자의 유한한 인지 자원을 보호하는 가장 경제적인 행위입니다.