요즘 한창 보고 있는 것 중에 하나가 루비 언어입니다. 책을 사놓고 보기 시작한 것은 꽤 된 것 같습니다만 그동안 별로 진척이 없다가 요즘 들어 시스템을 관리하거나 배포를 위한 스크립트로 사용하기 시작하면서 제대로 보고 있습니다. 넷빈즈6 에서 루비를 제대로 지원하기 시작한 것도 이유 중에 하나이고요.
제가 루비 공부를 시작하기 위해 선택한 첫 책은 programing ruby 였습니다. 아마 다른 많은 분들도 이 책으로 시작하셨을거예요. 그런데 이 책을 보고 있으니 뒤로 갈수록 자세한 설명에 질려서 진도가 잘 나가지 않아 고민하던 중 kent beck의 명저 중에 하나인 tdd by example 을 가지고 루비를 보면 어떨까 하는 생각으로 출발해서 1부를 끝내고 2부인 xunit 까지 왔습니다.
1부인 다중 통화 계산(multi currency money) 문제는 예제가 자바로 진행됩니다. 물론 저는 자바 개발자로 먹고 살기 때문에 이해하는데 문제가 없었지만 루비로 옮기려니 기존 자바 객체와 다른 점으로 인해 더 많은 테스트코드를 만들어보고 책을 많이 뒤져봐야 했습니다.
그래서 기록한다는 의미에서 ttdbe를 보면서 루비의 재미있는 점이나 자바와 다른 점들을 코드와 함께 설명해 볼까 합니다.
서론부터 뭔가 장황했습니다만 보시는 분들께서 더 나은 루비스러운 방법을 알고 계신다면 많이 알려주시면 감사하겠습니다. 굽슨굽슨