개발
Ruby와 Ruby on Rails
7분
2021.01.08.3.6K
Ruby
Ruby는 1995년 마츠모토 유키히로라는 일본 사람이 고안한 언어입니다. 그래서인지 일본에서는 Python보다도 인기가 많다고 하네요. Ruby는 위에서 먼저 말씀 드린 것처럼, 매우 쉽고 간단한 언어입니다. Ruby에 대한 한 마디로 ‘애자일(Agile) 방식’에 적합한 프로그래밍 언어라고 소개해드렸는데요.애자일(agile) 방식에 어울리는 웹 프로그래밍 언어의 대표 주자
‘애자일(Agile) 방식’이 무슨 뜻인가요?
이제부터 자세히 설명해드리도록 하겠습니다.
"스트레스가 없는 쉬운 프로그래밍을 지향하고 우리의 삶을 반영해야 하며, 프로그래밍 언어는 컴퓨터가 아닌, 인간 중심으로 설계되어야 한다."
이것이 Ruby의 철학입니다. Ruby의 개발자인 마츠모토 유키히로의 트위터에 들어가보면, 자기 소개란에 ‘Ruby의 아빠’라고 적혀있는데요. Ruby를 하나의 프로그래밍 언어가 아닌 ‘사람’처럼, 자신의 ‘자식’처럼 생각하는 마음을 엿볼 수 있었습니다.
Ruby의 장점은 무엇인가요?
Ruby는 간결함과 생산성이 강조된 언어입니다. 그렇기 때문에 어느 정도 익숙해지면 개발하는 속도가 매우빠릅니다. 웹사이트를 만들려고 할 때, 가장 빨리 만들 수 있는 언어가 바로 Ruby라고 하네요. 같은 숙련도의 Java 개발자와 Ruby 개발자가 같은 시간에 웹사이트를 만든다고 하면, Ruby로 만드는 것이 더 빠르다고 합니다. 검색해보니, 효율적인 측면에서 Java보다 Ruby의 손을 들어주는 의견을 많이 확인할 수 있었습니다. 또한 Ruby는 배우기도 매우 쉽기 때문에 누구나 금방 배울 수 있다고 합니다. Ruby의 최대 장점은 확장성과 이식성이 매우 높다는 것입니다. 그렇기 때문에 유지보수에 드는 노력 또한 매우 절약해주지요. Python이나 JavaScript 등 다른 언어로 개발된 라이브러리를 Ruby 위에 구현할 수 있습니다.
Ruby의 단짝, Ruby on Rails
Ruby를 얘기하면서 Ruby on Rails를 빼놓을 수 없겠지요. Ruby on Rails는 Ruby의 웹 프로그래밍 프레임워크인데요. Ruby 자체도 쉽고 간편한 언어이지만, 레일스 덕분에 더욱 사용하기 편리해졌다고 합니다. Ruby는 그다지 주목 받지 못하다가 2004년 말, Ruby on Rails가 개발되면서 폭발적인 인기를 끌게 됩니다.
Ruby의 한계점에 대해서
장점이 있으면 단점도 존재하겠지요. Ruby의 가장 큰 단점은 속도가 느리다는 것입니다. 예시를 들어보겠습니다. C와 Python, Ruby를 비교해볼 때, 서버에서 고객들에게 전체 메일을 보낸다고 하면, C에서 보낸 메일이 제일 빨리 도착하고, 그 다음이 Python, 그리고 가장 느린 것이 Ruby입니다. 또한 Ruby는 어중간하다는 단점이 있지요. 다른 언어들의 장점 사이에서 포지셔닝이 잘 되어있지 않다는 느낌이 들었습니다. 아예 대규모 서비스에서 이용하기에도 실행 속도 측면이 걸리기 때문에 이용하기 어렵지요. 또한 협업이 필요한 대형 프로젝트에서는 Ruby가 쓰이기에 부적합하다고 합니다.Ruby는 어떤 프로젝트에서 이용하는 것이 좋을까?
웹사이트를 쉽고 빠르게 만들 수 있기 때문에 동접자가 많지 않은 간단한 사이트를 구축할 때 이용하는 것이 좋습니다. 또한 프로토타입을 만들 때 이용하는 것을 추천해드리는데요. 위에서 설명해드렸던 것처럼 Ruby는 빠르게 무언가를 만들어보는 데에 굉장히 효율적인 언어이기 때문에, 스타트업처럼 빠르게 작은 서비스를 자주 출시해서 소비자의 반응을 봐야 할 때 이용하기 가장 좋은 언어입니다. 고객 중심의 서비스를 보다 빨리 개발하는 데에 목적이 있다면, 굉장히 적합한 환경인 것이지요. 국내에서는 Ruby on Rails 개발자가 많이 없지만, 몇몇 스타트업에서 적극적으로 사용한다고 합니다. 실리콘밸리 중심의 전 세계 스타트업은 이미 이러한 방식으로 Ruby를 많이 사용하고 있다고 하네요. 『Easy Start! 웹 개발 2.0 루비 온 레일스』의 저자인 황대산씨도 Ruby가 소규모 팀에게 어울리고, 레일스로 개발할 때는 스토리보드가 필요 없기 때문에 기존 업체들도 파일럿 프로젝트에는 레일스를 도입하는 사례가 늘고 있는 추세라고 합니다. 지금까지 Ruby에 대해서 간단하게 훑어봤습니다. 어떠셨나요? 우리 나라에서는 Ruby를 많이 이용하고 있지 않아서 다른 언어에 비해 관련 서적이나 동영상 강의를 찾기 힘들었는데요. Ruby의 장점을 십분 활용하여 스타트업이나 기업에서 빠르게 서비스를 출시해서 잠재고객들의 반응을 확인해야 할 때, 프로토타입용으로 Ruby를 이용하는 것도 좋은 방법일 것 같다는 생각이 들었습니다. 혹시 궁금한 사항이나 질문이 있으시다면, 댓글로 남겨주세요! 친절하게 답변해드리도록 하겠습니다. 여러분이 프로젝트를 진행하면서 개발자 파트너와 원활하게 의사소통 할 수 있도록! 앞으로도 유용한 개발 토막 상식으로 찾아 뵙겠습니다 :)‘Ruby와 Ruby on Rails’과 관련된 인기글
로그인하고 자유롭게 의견을 남겨주세요.