더북(TheBook)

규약을 지켜 코딩한다

대규모 시스템을 잘 꾸려 나가려면 될 수 있는 한 작게 만들어야 효과적이다. 자바스크립트는 간이 고루 잘 밴 덕 타이핑의 기상천외한 유연성 덕분에 적은 코드로도 많은 일을 할 수 있다(이 장 D3 사례 연구에서 다양한 유형의 입력값을 처리했던 걸 상기하자).

반면에, 자신이 짠 프로그램에 누가 무엇을 던져 넣을지 도통 알 수가 없다.

함수 인자에 특정한 조건이 있다면 그 값을 꼭 검증해야 한다. 16~ 21장에서는 가능한 한 매끄럽게 검증 작업을 처리하는 규약 레지스트리(contract registry)를 이야기한다.

레지스트리는 한 마디로 함수에 따로 코딩을 안 해도 인자 또는 반환값을 확인할 수 있게 해주는 장치다. 애스팩트 지향 프로그래밍(Aspect-Oriented Programming, AOP)(2장의 주제)이라는 마술과 더불어 배포 버전의 검증 오버헤드를 줄인다.

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