Giới thiệu ngôn ngữ lập trình Ruby

1. Ruby là gì?

  • Ruby là ngôn ngữ lập trình hướng đối tượng, thông dịch, được Yukihiro “Matz” Matsumoto tạo ra năm 1995.

  • Triết lý thiết kế: “Ngôn ngữ lập trình nên giúp lập trình viên hạnh phúc” (MINSWAN – Matz is Nice So We Are Nice).

  • Đặc điểm nổi bật:

    • Cú pháp tự nhiên, dễ đọc như tiếng Anh

    • Mọi thứ đều là đối tượng (100% OOP)

    • Linh hoạt – cho phép thay đổi class/core library

    • Hệ sinh thái phong phú với RubyGems

2. Cài đặt Ruby

Trên Linux/macOS

# Ubuntu/Debian
sudo apt install ruby-full

# macOS (với Homebrew)
brew install ruby

Trên Windows

Kiểm tra phiên bản

ruby -v
# => ruby 3.2.2 (2023-03-30 revision e51014f9c0) [x86_64-linux]

3. Cú pháp cơ bản

a. Hello World

puts "Hello World!"

b. Biến và kiểu dữ liệu

name = "Alice"       # String
age = 25             # Integer
price = 9.99         # Float
is_active = true     # Boolean

# Mảng
fruits = ["apple", "banana", "orange"]

# Hash (key-value)
person = { name: "Bob", age: 30 }

c. Điều kiện và vòng lặp

# If-else
if age >= 18
  puts "Adult"
else
  puts "Child"
end

# Case-when
case grade
when "A"
  puts "Excellent!"
when "B"
  puts "Good"
else
  puts "Try harder"
end

# Vòng lặp
3.times { puts "Ruby!" }

fruits.each do |fruit|
  puts fruit
end

d. Hàm (Method)

def greet(name)
  "Hello, #{name}!"
end

puts greet("Alice") # => "Hello, Alice!"

4. Lập trình hướng đối tượng trong Ruby

class Person
  attr_accessor :name, :age
  
  def initialize(name, age)
    @name = name
    @age = age
  end
  
  def introduce
    "My name is #{@name} and I'm #{@age} years old"
  end
end

alice = Person.new("Alice", 25)
puts alice.introduce

5. Ruby on Rails – Framework web nổi tiếng

Giới thiệu

  • Rails là framework web full-stack mạnh mẽ xây dựng bằng Ruby

  • Nguyên tắc:

    • Convention over Configuration (CoC)

    • Don’t Repeat Yourself (DRY)

Cài đặt

gem install rails
rails new myapp
cd myapp
rails server

Tạo CRUD đơn giản

rails generate scaffold Post title:string body:text
rails db:migrate

6. Ứng dụng của Ruby

  1. Phát triển Web:

    • Ruby on Rails (Shopify, GitHub, Airbnb)

    • Sinatra (micro-framework)

  2. DevOps & Automation:

    • Chef, Puppet (quản lý cấu hình)

    • Script tự động hóa

  3. Data Processing:

    • Xử lý file CSV/JSON

    • Web scraping (Nokogiri gem)

  4. Game Development:

    • Thư viện Gosu

7. Ưu và nhược điểm

Ưu điểm Nhược điểm
✔ Cú pháp đẹp, dễ đọc ❌ Hiệu năng không bằng Go/Rust
✔ Hệ sinh thái gem phong phú ❌ Không phổ biến bằng Python/JavaScript
✔ Rails framework mạnh mẽ ❌ Đa luồng phức tạp (GIL)
✔ Phát triển nhanh (MVP) ❌ Tài liệu ít hơn các ngôn ngữ khác

8. Tài nguyên học Ruby

  • Tài liệu chính thứchttps://www.ruby-lang.org

  • Sách:

    • “The Well-Grounded Rubyist”

    • “Eloquent Ruby”

  • Khóa học:

    • Ruby Koans

    • The Odin Project

9. Xu hướng 2024

  • Ruby 3.x tập trung vào hiệu năng (JIT compiler)

  • Rails 7 với Hotwire (giảm JavaScript)

  • API Development (Rails API mode)

  • Microservices với Sinatra

Ruby là lựa chọn tuyệt vời cho:

  • Startup cần phát triển nhanh

  • Developer ưa thích cú pháp đẹp

  • Dự án web phức tạp cần maintain lâu dài

Bạn có muốn tìm hiểu sâu hơn về Ruby on Rails hoặc cách triển khai ứng dụng Ruby production?

Chia sẻ

0963286779