더북(TheBook)

CHAPTER

9

 

설계는 프로젝트 초반에 하라

설계는 반드시 작업 초반에 해야 한다. 그 프로젝트를 어떻게 단순하게 만들지 프로젝트 초반부터 고민해야 한다.

 

나는 설계가 간단히 지원할 수 없는 기능은 절대 추가하지 않는다는 방침을 준수한다.

 

이런 말을 들으면 어떤 사람들은 엄청 화를 내는데, 특히 미래라는 개념이 없는 사람들이 그렇다. 입에 거품을 물고 “미룰 순 없어요! 이 기능은 너무 중요하다고요!”라거나 “일단은 넣고 나중에 빼면 되잖아요!”라고 한다. 이들은 자신의 평소 태도가 그렇다는 걸 모른다. 이들은 어차피 다른 기능을 두고도 똑같은 변명을 늘어놓을 것이다.

 

미래를 고려하지 않으면 코드가 엉망으로 설계되고 너무 복잡해진다.

 

그런 코드는 망가진 부품을 엉망으로 욱여넣은 프랑켄슈타인의 괴물이 될 것이다. 거대하고 추하고 불안정하여 여러분의 건강에 해로운 존재 말이다.

아주 작은 기능은 추가해도 나중에 리팩토링하기가 어렵지 않다. 아키텍처가 감당할 수 없는 거대한 기능을 넣었다가 나중에 없애는 건 끔찍하게 어려운 일이다. 크기가 중요하다.

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