더북(TheBook)

한방에 터득하기는 조금 버거워도 참 놀랍지 않은가?

‘의존성 주입 프레임워크’ 절에서는 애초에 TDD로 믿음성 있는 컴포넌트를 작성했지만, 이 절에서는 TDD를 기존 코드를 파악하는 보조 도구로 사용할 것이다. 솔직히 우리도 Aop.js를 발굴했을 당시 TDD로 분석했고, TDD로 Aop.js 코드를 대부분 재작성하면서 한 줄씩 코드를 파악했다.

TDD는 특성상 애플리케이션의 모든 기능을 한꺼번에 코딩하지 않는다. 일단 테스트를 만들고 그 테스트를 성공시킬 만큼만 코딩하고 필요하다면 리팩토링을 하고 나서 계속 반복한다. 이러한 점진적인 접근 방법으로 어떻게 멋진 코드를 만들 수 있다는 건지 의뭉스럽게 여기는 개발자들이 많다. 이 책에 수록된 예제를 보면서 막연한 두려움이 안도감으로 바뀌길 바란다. 그러면서 Aop.js 같은 진주를 탄생시킨 자바스크립트만의 특성을 깨우치게 될 것이다.

TIP

테스트 주도 개발을 하면 과거의 방법론처럼 믿음 있고 우아한 코드를 만들 수 있다.

 

AOP의 핵심은 함수 실행(타깃)을 가로채어 다른 함수(어드바이스)를 실행하기 직전이나 직후, 또는 전후에 실행시키는 것이다. 직전과 직후는 전후(surround) 케이스에 포함되므로 이 한 가지만 살펴보면 된다. 프레드릭과 데이브의 가르침에 따라 Aop 객체로 around 함수를 생성한다. 소스 파일은 예제 꾸러미 AOP 디렉터리 안에 있고, 자세한 것은 이 장 도입부에서 일러둔 내용을 참고하자.

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