더북(TheBook)

1.2.1 단순한 코드

유지보수 가능한 객체지향 디자인의 여정을 시작하는 훌륭한 방법은 메서드와 클래스를 단순하게 구현하는 것이다. 처음에는 몇 줄의 조건문으로 이뤄졌던 메서드가 시간이 지나 수백 줄로 길어지고 if 문 안에 if 문이 중첩되면서 복잡해진 경우를 생각해보자. 그런 코드는 유지보수하기가 매우 어렵다.

보통 클래스와 메서드는 단순하고 누구나 관리하기 쉬운 수준에서 시작한다. 그러나 이를 단순하게 유지하려는 노력을 하지 않으면 이해하기도 힘들고 유지보수하기도 어려워진다(그림 1-2). 또한 복잡한 코드는 버그를 초래하기 쉽다. 이해하기 어렵게 복잡하게 구현하면 버그가 꼬이기 쉽다. 복잡한 코드는 유지보수, 리팩터링, 테스트가 어렵기 때문에 개발자들은 무언가 깨질까 두려워하며 코드에서 가능한 테스트 케이스를 모두 찾아내기도 어려워한다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.