더북(TheBook)

그래도 개발할 때 가장 재밌는 언어는 루비다. 동적 언어의 유연함이 주는 재미! 사용해 본 사람은 알 것이다. 확고한 타입에 얽매이지 않아 객체를 쉽게 정의하고, 어느 위치에서건 그 객체가 가진 원래 능력보다 +α로 사용되는 것을 보면 참 재밌다. 재미 요소를 빼고 실제 개발 속도와 작성된 코드의 양으로만 봐도 루비 같은 동적 언어의 생산성은 컴파일 기반의 정적 언어보다 훨씬 뛰어나다.

루비로 개발할 때 좋았던 게 여러 가지가 있지만, 그중 하나는 소스를 수정하면 프로그램에 바로 반영된다는 것이다. C#으로 개발할 때는 소스를 수정할 때마다 컴파일하고 프로그램을 재구동하는 과정을 반복해야 했다. 물론 Visual Studio가 이런 일련의 과정을 알아서 다 해준다. 그리고 테스트 코드를 잘 작성해 놓으면 테스트 코드만 실행해봐도 소스의 변경 사항을 확인할 수 있다.

하지만 아무리 Visual Studio가 알아서 다 해준다 해도 혹은 자동화된 테스트를 한다고 해도, 소스를 변경하고 그것을 다시 확인하는 사이클에 소요되는 시간은 어찌할 수가 없다. 덩치가 큰 프로그램일 경우 한 번 빌드하고 재구동하려면 괜히 화장실을 한 번 갔다 와야 한다.

그림 1-8 긴 컴파일 시간
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.