Ruby:
Sắp xếp mã thành các hàm

Làm thế nào:

Hãy tưởng tượng bạn đang viết một kịch bản nhanh để chào mừng người dùng:

def greet(name)
  "Xin chào, #{name}!"
end

puts greet("Alice")   # Kết quả: Xin chào, Alice!
puts greet("Bob")     # Kết quả: Xin chào, Bob!

Hoặc có thể bạn đang tính diện tích của một hình tròn:

def circle_area(radius)
  Math::PI * radius ** 2
end

puts circle_area(5)   # Kết quả: 78.53981633974483

Gọn gàng và dễ quản lý hơn, phải không?

Sâu hơn nữa

Khái niệm về hàm, cũng được biết đến là phương thức trong Ruby, không phải là mới—nó cũ như chính lập trình. Quay trở lại những năm 1950, các chương trình con, như chúng được biết đến, đã được giới thiệu để giảm bớt sự trùng lặp.

Có lựa chọn khác sao? Chắc chắn, bạn có mã nội tuyến, bạn có thể đi theo hướng OOP với các lớp và đối tượng, hoặc thậm chí là hướng hàm với lambdas và procs. Nhưng hàm là nền tảng của mã lệnh gọn gàng. Muốn hiệu suất? Biến cục bộ trong hàm nhanh và hàm có thể trả về giá trị ngay lập tức với return.

Về mặt triển khai, bạn có thể định nghĩa một hàm với def và kết thúc nó với end. Bạn có thể thiết lập các tham số mặc định, sử dụng các toán tử splat cho các hàm variadic, và hơn thế nữa. Hàm có thể đơn giản hoặc phức tạp theo ý muốn của bạn.

Tham khảo thêm