티스토리 뷰

IT

NGWeb Tutorial 자료 : Ruby on rails

앤디군 2006. 3. 15. 00:37
발표자료(파워포인트)

Next Generation Web conference 2006 에서 ruby on rails에 관하여 tutorial 세션 발표를 하였다. 생각보다 사람들이 많이 모여서 긴장되긴 했지만 나름대로 준비를 해왔기 때문에 말하고자 하는 내용은 모두 전달한 것 같다.

Ruby on rails를 이용한 국내 reference가 있느냐라는 질문이 있었다. 내가 알고 있기로는 olaworks가 ruby on rails를 이용하여 서비스를 준비하고 있는 중이고 그 이외에는 공식적으로는 없는 것으로 알고 있다. 김창준님의 말에 따르면 월간웹에 소개된 RoR로 구성된 서비스가 하나 있다고 한다. 사내에서 ruby on rails를 이용하여 prototype 서비스를 제작한 적은 있지만 외부에 공개되지는 않았다.

또 ruby on rails의 강력한 컴포넌트 중 하나인 ActiveRecord가 legacy에 연결될 수 있는지에 대한 의문을 가진 분도 있는 것 같았다. 답은 legacy DB에 연동될 수 있다는 것이다. ActiveRecord의 convention인 plural table name, attribute name 등등을 지정하지 않고 암묵적으로 편하게 사용할 수 있다는 장점은 사라지지만 legacy 시스템의 naming convention에 맞춰서 ActiveRecord를 사용할 수는 있다.

예를 들어 ActiveRecord에서 Person이라는 이름의 ruby객체는 people이라는 table에 매핑이 된다. (알다시피 people은 person의 복수형) 하지만 기존의 legacy시스템에서는 이러한 복수형의 이름을table이름에 사용하는 경우가 드물다. 이런 경우에 기존 테이블의 이름을 바꾸기 보다는 ActiveRecord객체에 table이름을 명시적으로 지정해주면 된다.
class Person < ActiveRecord::Base

set_table_name :person


end

위와 같이 table이름을 명시적으로 지정해주면 Person이라는 객체는 person이라는 테이블에 매핑이 된다. Primary key 역시 set_primary_key로 따로 지정할 수도 있다.

기존의 웹개발 프레임웍과 비교하여 ruby on rails를 선택하려면 여러가지 면들을 비교를 해봐야할 것이다. C, C++, java, perl, php 등으로 웹개발을 해본 경험에 비추어 본다면 분명히 ruby on rails는 performance 이슈를 제외한다면 다른 웹 개발 언어, 프레임웍들을 압도할 수 있는 월등한 생산성을 보여줄 수 있다고 본다.

프레임웍이 인간에 친숙하게 되면 기계가 괴롭게 된다. 마찬가지로 기계가 편하게 되면 사람이 괴롭게 된다. Ruby on rails는 인간을 편하고 행복하게 하는데는 성공했다고 본다. 그렇다면 performance는 보장을 못하는 것인가? 아직은 ruby 언어의 특성상 rails가 제공하는 기능상 performance의 보장은 힘들다고 본다. 하지만 performance저하대비 생산성 향상 측면을 비교하자면 분명히 rails를 선택하는 것은 손해보는 장사는 아니다.

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함