Computer >> 컴퓨터 >  >> 프로그래밍 >> Ruby

루비(Ruby) 프로그래밍으로 무엇을 만들 수 있을까? 실전 활용 분야 총정리

루비(Ruby) 프로그래밍 언어는 놀랄 만큼 다양한 실용적인 활용처를 가지고 있습니다.

그런데 여기서 중요한 포인트가 있습니다.

많은 사람들이 Ruby on Rails 때문에 루비에 매력을 느끼곤 합니다. Rails는 프레임워크인데요, 프레임워크란 처음부터 모든 것을 직접 만들지 않아도 웹사이트나 웹 애플리케이션을 더 쉽고 빠르게 구축할 수 있도록 도와주는 도구 모음을 말합니다.

물론 그것도 훌륭한 선택입니다.

하지만 루비는 그 자체로도 아름답고 우아한 프로그래밍 언어입니다. 조금만 시간을 들여 사용해 보면 어느새 매료되어 있을 것입니다.

그렇다면 이런 의문이 듭니다.

루비는 Rails가 할 수 있는 일에만 한정되어 있을까?

아니요!

전혀 그렇지 않습니다.

루비는 범용(general-purpose) 프로그래밍 언어입니다. 이론상으로는 원하는 어떤 것이든 만들 수 있습니다.

다만,

무언가를 만드는 것이 얼마나 쉬운지 또는 어려운지는 별개의 문제입니다. 이는 어떤 젬(gem)과 라이브러리를 활용할 수 있느냐에 달려 있는데, 이러한 젬들이 개발자 대신 많은 힘든 작업을 처리해 주기 때문입니다.

루비로 만들 수 있는 것들

영감이 필요하다면 아래 예시들을 참고해 보세요.

  • 풀스택(Full-stack) 웹 개발
  • 웹 스크래핑 및 크롤링
  • 정적 웹사이트 생성기
  • 커맨드라인 미디어 플레이어(FFI + libVLC 활용) 등 각종 CLI 도구
  • 자동화, 백업 및 DevOps 도구
  • 서버
  • 파싱, 데이터 정제 및 필터링
  • API 클라이언트(Twitter API, GitHub API 등)
  • 리포트 생성기(PDF, HTML, CSV)

꽤 방대한 목록이죠?

위의 모든 항목은 실제 서비스(프로덕션) 수준으로 구현하고 배포할 수 있습니다.

상대적으로 덜 실용적이지만 여전히 가능한 분야:

  • 게임(gosu / Ruby2D)
  • 데이터 과학
  • 머신러닝 및 AI

이런 분야들은 주로 개인 프로젝트나 학습·재미 목적으로 접근하기에 적합합니다.

그 외의 모든 것은?

물론 불가능하지 않지만, 훨씬 더 많은 노력과 코드량, 그리고 해당 분야에 대한 전문 지식이 필요합니다.

인기 오픈소스 루비 프로젝트

루비로 만들어진 대표적인 프로젝트들을 소개합니다. 직접 살펴보면서 이 언어로 무엇이 가능한지 느껴보세요.

아래 프로젝트들은 모두 GitHub 스타 4,000개 이상을 받은 검증된 프로젝트입니다.

Rails 기반 애플리케이션:

Rails 외 애플리케이션:

루비로 만들어진 프로젝트는 수천 개에 달하지만, 위 목록만으로도 이 언어로 무엇을 할 수 있는지 충분히 감을 잡을 수 있을 것입니다.

마무리하며

원주율(3.14159...)의 자릿수를 최대한 빠르게 계산하거나, 하드웨어에서 극한의 성능을 끌어내야 하는 작업이라면 루비를 선택하지 않을 것입니다.

하지만 그런 작업에는 PHP나 파이썬 같은 다른 인터프리터 언어 역시 사용하지 않을 겁니다.

이들 언어는 많은 부분에서 동일한 한계를 공유하기 때문입니다. 최대 성능을 원한다면 결국 ASM(어셈블리 언어), 즉 컴퓨터와 1과 0으로 직접 대화하는 것에 가장 가까운 수준까지 내려가야 할 수도 있습니다.

핵심은 이것입니다.

모든 것에는 트레이드오프(trade-off)가 존재합니다. 사용 편의성과 개발자 친화성을 원한다면 어느 정도의 성능을 희생해야 하며, 이는 피할 수 없는 사실입니다.

이 점을 염두에 두고 생각해 보세요. 완성도 높은 웹사이트를 만들거나, 백업 자동화, 리포트 생성기, 크롤러, 각종 계산기, API 클라이언트 같은 유용한 도구를 개발하고 싶다면? 아니면 단순히 프로그래밍의 세계에 입문해 즐겁게 배우고 싶다면?

그렇다면 루비가 당신에게 딱 맞는 선택입니다!

루비는 지금도 활발하게 개발되고 있고, 배우기 쉬우며, 막히는 부분이 생기면 언제든 커뮤니티의 도움을 받을 수 있습니다.

그러니 한번 도전해 보시는 건 어떨까요?

여러분이 루비로 만들어 낼 멋진 프로젝트를 기대하겠습니다!