////
Search
Duplicate
🧨

1. 코드는 이해하기 쉬워야 한다.

코드는 이해하기 쉬워야 한다.
많은 사람들이 도출해낸 결론이다.
왜일까?

무엇이 코드를 ‘더 좋게’ 만드는가?

프로그래머의 대부분은 프로그래밍 시에 즉흥적으로 결정을 내리곤 한다.
친숙한 내용을 더 빠르게 받아들인다는 뜻이다.

가독성의 기본 정리

코드에 대한 연구 끝에 가독성과 관련해 가장 중요한 통계적 사실이 있음을 알아내었다.
저자는 이를 가독성의 기본 정리라고 부르기로 했다.
코드는 다른 사람이 그것을 이해하는 데 들이는 시간을 최소화하는 방식으로 작성되어야 한다.
위 정리에서 의미하는 이해는 매우 높은 기준을 의미한다. 이해했을 때, 그 코드를 자유롭게 수정하고 버그를 찾아내고 수정한 내용이 어떻게 영향을 끼칠지 알아야한다는 것이다.
작성한 코드를 나만 보게될 것이라고 해도 가독성은 중요하다. 시간이 지나면 잊어버리듯 우리가 작성했던 코드를 영원히 기억할리없고 언젠가 마주친다면 초면으로 느껴질 것이다.

분량이 적으면 항상 더 좋은가?

일반적으로 분량이 더 적은 코드로 문제를 해결하 수 있다면 그것이 더 낫다.
하지만 분량이 적다고 해서 항상 더 좋은 것은 아니다. 가독성의 기본 정리를 우선시 하라

이해를 위한 시간은 다른 목표와 충돌하는가?

가독성에 대한 가치가 코드의 효율성, 잘 구성된 아키텍처, 테스트의 용이성과 같은 다른 제약 조건보다도 중요할까? 그들이 충돌한다면 무엇을 선택해야 할까?
저자의 경험에 의하면 이러한 제약 조건들은 크게 방해가 되지 않는다. 의심의 여지가 있을 때엔 가독성을 택하라고도 한다.

어려운 부분

가독성을 좋게 만들려면 상상 속의 인물을 만들어 내고 그 인물이 코드를 읽었을 때, 쉬운지, 어려운지를 따져야하기 때문에 비용이 많이 들 수 밖에 없다.
하지만 이것이 당연해진다면 그 비용보다 더 큰 이득이 우리를 기다리고 있을 것이다.