
프레임워크는 로직과 방법을 강제하여 기준 품질 이상을 보장한다. 그래서 'A 프레임워크를 썼다...'라고 하면 '아 그럼 이런 부분들은 걱정하지 않아도 되겠군...'하게 말이다.
하지만, 이건 어디까지나 이상일뿐 아무리 좋은 프레임워크를 사용한다 해도 개발자가 이해가 없고, 그 가치를 모르면 무용지물이다. 얼마전 Java쪽 최신 프레임워크중 하나인 Spring을 도입한 대규모 프로젝트가 테스트중 도저히 문제를 수습할 수가 없어서 Spring을 거둬내고 첨부터 다시 만들었다는 이야기는 이를 반증한다.
언제였을까 처음 Ruby와 Rails에 대해 들었던게...
그냥 또 신기한게 하나 나왔다.. 라고 생각할무렵 Rails는 급속히 퍼져나갔고,
주류 기술이 아니면 관련 서적도 잘 나오지 않는 우리나라에서 조차 실무에서 사용빈도가 거의 없음에도 불구하고 벌써 개발관련 서적이 5권이나 나왔다.
사놓고 보지도 못하고 있는 파이썬과는 좀 달라보자는 생각에 벼락치기로 책을 몇권 봤는데...
명불허전!
Rails는 프레임워크를 써야 하는 이유를 몸으로 보여주는 프레임워크였다.
Rails는 흡사 마술처럼 작동한다.
MVC로만 개발이 가능한 Rails는 Category 란 Model을 만들면 자동으로 Categories란 DB Table을 찾는다.
찾을 뿐 아니라 모든 Column을 Model Class에 대응시켜준다. 자동으로 말이다.
또한 Scaffold란 기능을 쓰면 선언을 해주는것 만으로 Model과 Controller 를 생성해준것 만으로 CRUD가 가능하게 한다.
Rails는 기존 프레임워크가 가지고 있던 거의 모든 단점을 해결했다.
ORM의 매핑정보를 입력할 필요가 없게 되었고, 프레임워크 스스로 최신버전으로 Update가 가능하며, Configuration이 거의 없으며, 어디나 설치할 수 있고, 어떤 DB에 연결해도 변경사항이 없으며,
DB Schema 변경 History를 관리하며, TDD개발을 가능하게 하고, Ruby의 소스는 그 어떤 언어보다 코딩량이 짧다.
Rails의 유일한 단점은 바로 언어가 C#,이나 Java가 아니라는것.
언어의 능력이 부족함이 아니라 Ruby라는 새 언어를 배워야 한다는 진입장벽이 문제다.
하지만 이것도 일단 접해보면 그리 문제가 될것 같지는 않다.
장점은 일단 얇다.
하지만 Rails로 개발하기 위한 거의 모든 내용을 담고 있다. Ruby에 대한 책이 아니므로 언어자체에대한 설명은 부족한 편이지만, '사진과 슬라이드쇼'라는 예재 구현을 하나 따라하다보면 완벽하게 작동하는 웹프로그램이 하나 나온다. Rails 개발자들이 말하는 마술같은 힘을 알고 싶다면 사실. 이책한권으로도 충분하다.
번역상태도 준수한 편이다. 이런 비주류분야의 고질적인 문제는 번역의 무성의함, 샘플코드의 오타가 빈번하다는 건데, 이책은 그렇지 않다. 거의 모든 샘플을 따라해봤는데, 단한자의 오타도 없었다.
(굳이 이말을 하는 이유는 Rails의 네이밍규칙이 독특하기 때문이다. photo인지, Photo인지, photos인지가 책을 보다 보면 무진장 신경쓰인다. ㅋ)
장점은 일단 두껍다. (^^;)
900페이지가 넘는다. 이책은 정말 거의 모든 내용을 담고 있으므로 레퍼런스 식으로 한권 가지고 있어도 무방해 보인다.
하지만 구성은 앞의 책과 비슷하다. '장바구니'라는 구매, 판매시스템을 하나 만들어보는 것이 책의 절반이다.
나머지는 Rails의 핵심 ActiveRecord가 차지하고 있다.
이런 구서을 선호하지 않는 사람(나)같은 사람도 다시 생각해보자. 웃기는 말이지만 Rails는 일단 만드는걸 '체험'해보는것이 가장 빠른거 같다.
대체 Scaffold를 기존 웹개발자들에게 예재로 만들어보게 하지 않고 어떻게 설명을 한단 말인가?
한줄만 코딩하면 게시판의 쓰기,수정, 삭제, 리스트의 기초가 모두 만들어진다는걸 말이다.
현재 200페이지쯤 봤는데, 돈값은 하는 책으로 보인다.
Rails에 대해 하고 싶은 말이 좀더 있지만 고건 다음에.


Comments List