[개발 상식] 들여쓰기가 코드 가독성에 미치는 영향
이번에 우아한 테크코스 2주차 미션에서 추가된 요구사항이 있었습니다. 다름아닌 ‘indent(인덴트, 들여쓰기) depth를 2까지만 허용한다.’ 라는 요구사항이 있었습니다.
이 요구사항을 보니 의문이 들더라구요. 왜 2라는 숫자가 정해져 있을까? 혼자서 코드를 짤 땐 3번 4번 들여쓰기를 하는 경우도 허다했거든요. 이런 의문을 가지고 들여쓰기가 코드 가독성에 어떠한 영향을 미치는지 알아보려고 합니다!
🤔들여쓰기 크기가 미치는 영향?
들여쓰기가 중요한 것은 소스 코드의 구조를 미묘하게 형성하는 것입니다. 블록과 블록사이의 관계를 파악하는 것을 통해 계층 구조를 명확하게 알 수 있죠. 이는 다른 동료 개발자가 코드를 보더라도 빠르게 스캔할 수 있게 도와줍니다. 논리적인 흐름을 빠르게 이해할 수 있다는 말이죠!
그리고 들여쓰기를 인지하고 코드를 작성하게 된다면, 많은 코드들이 분리될 것입니다. 메서드들이 분리되면 자연스럽게 단일 책임 원칙(Single Responsibility Principle)을 따르게 되고, 의존성 주입(Dependency Injection, DI)과 추상화를 통해 설계 품질까지 향상할 수 있게 됩니다!
🤔최적의 들여쓰기 깊이는 몇일까?
우아한 테크코스 프리코스의 이번 요구사항으로는 들여쓰기의 깊이가 2가 넘지 않도록 구현하는 것을 원칙으로 하고 있습니다. 하지만 왜 2이라는 숫자일까요?
사실 이 부분의 정답은 없습니다. 굳이 2이어야 할 필요가 없다는 것이죠. 들여쓰기는 단순히 코드 스타일이고, 이런 부분은 개발 팀 간의 합의에 의해서 허용하는 결정입니다.
하지만 보통 단일 책임 원칙(SRP)를 준수하는 코드의 경우 3을 넘는 경우가 흔치 않습니다. 그래서 보통 2, 3을 수준의 들여쓰기 레벨을 유지하는 것이 좋다고 합니다.
물론 이 역시 정답은 아닙니다. 들여쓰기의 최적화된 코드는 정해져있지 않구요. 하지만 그 일관성이 중요하다는 점은 모든 개발자들이 동의하는 사실입니다!
😀 끝으로..
코드를 짜면서 한 번도 생각지 못했던 들여쓰기에 대해 알아보았어요! 들여쓰기가 이만큼 중요하다는 사실도 새삼스레 깨닫게 되었지만 더욱 중요한 사실은 들여쓰기는 코드 가독성에 미치는 수많은 영향 중 하나일 뿐이라는 사실!
저는 이번 기회 코드 가독성에 대해 또 한번 중요성을 깨닫게 되었습니다..! (끝없는 깨달음!!)