Page 15 -
P. 15
Chapter
11
단순성과 엄격성
일반적으로
엄격한 애플리케이션일수록 더 단순하게 작성할 수 있다.
예를 들어 숫자 1과 2만 입력할 수 있는 프로그램을 상상해보자. 이 프로
그램은 입력할 때 숫자 1 앞이나 뒤에 공백이 들어가는 아주 작은 변화에도
에러를 낸다. 매우 ‘엄격’해서 무척 단순하게 작성할 수 있다. ‘1이나 2가 정
확하게 입력되었는가?’만 확인하고 아닌 경우 에러를 내면 된다.
하지만 이 정도로 엄격한 프로그램은 대체로 실용성이 크게 떨어진다. 정
확히 어떤 형식을 입력해야 할지 모르거나 실수로 스페이스 바를 눌렀을
때, 아니면 숫자를 입력하다가 다른 키가 눌렸을 때 의도대로 동작하지 않
는다면 사용자는 무척 답답할 것이다.
단순성(엄격성)을 살리기 위해 사용성이 저해된 예다. 엄격하다고 해서
항상 이런 트레이드오프 관계가 형성되는 건 아니지만 사실 그렇게 되는 경
우가 많다. 1, One, ‘1’을 입력할 수 있게 허용하여 실수를 더 너그럽게 용
11장 단순성과 엄격성 045
심플소프트웨어_06.indd 45 2019-10-18 오전 10:33:59