Ruby란?
Ruby는 1995년 일본의 유키히로 마츠모토(마츠)가 만든 프로그래밍 언어야. 사람 중심의 언어를 지향하면서도, 객체지향적이면서도 스크립트 언어의 유연함을 갖고 있어.
주요 철학은 “프로그래머의 행복”이고, 그에 맞춰 간결한 문법, 높은 추상화, 유연한 설계를 제공해.
Ruby의 주요 특징
1. 완전한 객체지향 언어
• 숫자, 문자열, 심지어 nil까지도 모두 객체로 취급돼
2. 간결하고 직관적인 문법
• 영어처럼 읽히는 코드 작성이 가능해
3. 동적 타이핑
• 타입을 명시할 필요 없이 실행 시점에 타입 결정
4. 인터프리터 언어
• 컴파일 없이 바로 실행 가능
5. 메타프로그래밍
• 코드로 코드를 작성하거나 수정할 수 있는 고급 기능 제공
Ruby 기본 문법
1. 변수와 출력
name = "홍길동"
puts "안녕하세요, #{name}님"
2. 조건문
age = 20
if age >= 18
puts "성인입니다"
else
puts "미성년자입니다"
end
3. 반복문
5.times do |i|
puts i
end
[1, 2, 3].each do |n|
puts n * 2
end
4. 함수와 클래스
def say_hello(name)
puts "안녕하세요, #{name}님"
end
say_hello("철수")
class Person
def initialize(name)
@name = name
end
def greet
puts "안녕하세요, #{@name}입니다"
end
end
p = Person.new("영희")
p.greet
Ruby의 주요 활용 분야
분야 |
설명 |
---|---|
웹 개발 |
Ruby on Rails 프레임워크로 유명함 |
스크립트 작성 |
서버 관리, 자동화 도구에 사용됨 |
데이터 처리 |
CSV, JSON 등 파일 처리 및 간단한 데이터 분석 가능 |
테스트 자동화 |
RSpec, Cucumber 등의 테스트 프레임워크 활용 |
Ruby on Rails 간단 소개
Ruby의 가장 대표적인 웹 프레임워크는 Ruby on Rails야.
Rails는 Convention over Configuration (설정보다 관례), DRY(Don’t Repeat Yourself) 같은 철학을 따르면서, 빠르게 웹 애플리케이션을 만들 수 있게 해줘.
기본 기능이 잘 갖춰져 있어서, 로그인, 게시판, 관리자 페이지 같은 기능을 빠르게 구현할 수 있어.
gem install rails
rails new myapp
cd myapp
rails server
Ruby의 장단점
장점
• 문법이 간결하고 생산성이 높음
• 객체지향 프로그래밍 학습에 적합
• Rails를 활용한 웹 서비스 개발이 매우 빠름
• 활발한 커뮤니티와 다양한 라이브러리 (gem)
단점
• 성능은 C계열 언어나 Go 등에 비해 느린 편
• 대형 프로젝트에서의 확장성과 유지 관리가 어려울 수 있음
• 최근엔 트렌드가 Node.js나 Python 쪽으로 이동함
Ruby가 적합한 사람
• 간결한 문법과 높은 생산성을 원하는 사람
• 웹 애플리케이션을 빠르게 만들고 싶은 사람
• 객체지향 프로그래밍을 본격적으로 배우고 싶은 사람
• Rails 기반의 스타트업 기술스택을 활용하고 싶은 사람
더 깊이 있게 다뤄볼 수 있는 주제도 있어:
• Ruby로 콘솔 프로그램 만들기
• Ruby on Rails로 블로그 구현하기
• Ruby에서 테스트 코드 작성하기
• Ruby로 API 서버 만들기