Thứ sáu, 30/06/2017 | 00:00 GMT+7

Cách viết chương trình Ruby đầu tiên của bạn


Giới thiệu

Câu "Xin chào, Thế giới!" chương trình là một truyền thống cổ điển và lâu đời trong lập trình máy tính. Đây là một chương trình đầu tiên đơn giản và hoàn chỉnh dành cho người mới bắt đầu và đó là một cách tốt đảm bảo rằng môi trường của bạn được cấu hình đúng cách.

Hướng dẫn này sẽ hướng dẫn bạn cách tạo chương trình này trong Ruby. Tuy nhiên, để làm cho chương trình thú vị hơn, ta sẽ sửa đổi chương trình “Hello, World” truyền thống để nó hỏi user tên của họ. Sau đó, ta sẽ sử dụng tên trong lời chào. Khi bạn hoàn thành hướng dẫn, bạn sẽ có một chương trình giống như thế này khi bạn chạy nó:

Output
Please enter your name. Sammy Hello, Sammy! I'm Ruby!

Yêu cầu

Bạn nên cài đặt môi trường phát triển Ruby cục bộ trên máy tính của bạn . Cài đặt một trong những hướng dẫn sau:

Bước 1 - Viết câu “Hello, World!” Cơ bản Chương trình

Để viết "Xin chào, Thế giới!" , hãy mở một editor dòng lệnh như nano và tạo một file mới:

  • nano hello.rb

Khi file văn bản mở ra trong cửa sổ dòng lệnh, ta sẽ gõ chương trình của bạn :

xin chào.rb
puts "Hello, World!" 

Hãy chia nhỏ các thành phần khác nhau của mã.

puts là một phương thức Ruby yêu cầu máy tính in một số văn bản ra màn hình.

Sau đó, phương thức puts được theo sau bởi một chuỗi các ký tự - Hello, World! , đặt trong dấu ngoặc kép. Bất kỳ ký tự nào nằm trong dấu ngoặc kép được gọi là mộtchuỗi . Phương thức puts sẽ in chuỗi này ra màn hình khi chương trình chạy.

Một số phương thức, như phương thức puts , có trong Ruby theo mặc định. Các phương thức dựng sẵn này luôn có sẵn khi bạn tạo các chương trình Ruby. Bạn cũng có thể xác định các phương pháp của riêng mình.

Lưu và thoát nano bằng lệnh phím CONTROLX , và khi được yêu cầu lưu file , hãy nhấn y .

Hãy thử chương trình của ta .

Bước 2 - Chạy chương trình Ruby

Với "Xin chào, Thế giới!" chương trình đã viết, ta đã sẵn sàng để chạy chương trình. Ta sẽ sử dụng lệnh ruby , theo sau là tên của file ta vừa tạo.

  • ruby hello.rb

Chương trình sẽ thực thi và hiển thị kết quả này:

Output
Hello, World!

Hãy khám phá điều gì đã thực sự xảy ra.

Chạy lệnh ruby đã chạy trình thông dịch Ruby. Trình thông dịch Ruby đọc file bạn đã chỉ định và đánh giá nội dung của nó. Nó thực hiện dòng puts "Hello, World!" bằng cách gọi hàm puts . Giá trị chuỗi của Hello, World! đã được chuyển đến hàm.

Trong ví dụ này, chuỗi Hello, World! cũng được gọi là một đối số vì nó là một giá trị được truyền cho một phương thức.

Các trích dẫn ở hai bên của Hello, World! không được in ra màn hình vì chúng được sử dụng để nói với Ruby rằng chúng chứa một chuỗi. Dấu ngoặc kép phân định vị trí chuỗi bắt đầu và kết thúc.

Chương trình hoạt động, nhưng ta có thể làm cho nó tương tác hơn. Hãy cùng khám phá cách thức.

Bước 3 - Nhắc đầu vào

Mỗi khi ta chạy chương trình của bạn , nó sẽ tạo ra cùng một kết quả. Hãy nhắc người đang chạy chương trình của ta tên của họ. Sau đó ta có thể sử dụng tên đó trong kết quả .

Thay vì sửa đổi chương trình hiện có của bạn, hãy tạo một chương trình mới có tên là greeting.rb trong trình soạn thảo nano :

  • nano greeting.rb

Đầu tiên, thêm dòng này, dòng này sẽ nhắc user nhập tên của họ:

lời chào.rb
puts "Please enter your name."

, ta sử dụng phương thức puts để in một số văn bản ra màn hình.

Bây giờ hãy thêm dòng này để nắm bắt thông tin đầu vào của user :

lời chào.rb
puts "Please enter your name."
name = gets

Dòng tiếp theo này có liên quan nhiều hơn một chút. Hãy phá vỡ nó.

Các gets phương pháp cho máy tính để chờ đầu vào từ bàn phím. Điều này sẽ tạm dừng chương trình, cho phép user nhập bất kỳ văn bản nào họ muốn. Chương trình sẽ tiếp tục khi user nhấn ENTER trên bàn phím của họ. Tất cả các tổ hợp phím, bao gồm tổ hợp phím ENTER , sau đó được ghi lại và chuyển đổi thành một chuỗi ký tự.

Ta muốn sử dụng các ký tự đó trong kết quả của chương trình, vì vậy ta lưu các ký tự đó bằng cách gán chuỗi cho một biến được gọi là name . Ruby lưu chuỗi đó trong bộ nhớ máy tính của bạn cho đến khi chương trình kết thúc.

Cuối cùng, thêm dòng này để in kết quả :

lời chào.rb
puts "Please enter your name."
name = gets
puts "Hi, #{name}! I'm Ruby!"

Ta sử dụng lại phương thức puts , nhưng lần này ta sử dụng một tính năng Ruby được gọi là nội suy chuỗi , cho phép ta lấy giá trị được gán cho một biến và đặt nó vào bên trong một chuỗi. Thay vì name từ, ta sẽ nhận được giá trị mà ta đã lưu trong biến name , giá trị này phải là tên của user .

Lưu và thoát nano bằng cách nhấn CTRL+X và nhấn y khi được yêu cầu lưu file .

Bây giờ chạy chương trình. Bạn sẽ được yêu cầu nhập tên của bạn , vì vậy hãy nhập tên đó và nhấn ENTER . Đầu ra có thể không chính xác như những gì bạn mong đợi:

Output
Please enter your name. Sammy Hi, Sammy ! I'm Ruby!

Thay vì Hi, Sammy! I'm Ruby! , có một dấu ngắt dòng ngay sau tên.

Chương trình đã ghi lại tất cả các lần nhấn phím của ta , bao gồm cả ENTER mà ta đã nhấn để yêu cầu chương trình tiếp tục. Trong một chuỗi, nhấn phím ENTER sẽ tạo một ký tự đặc biệt để tạo một dòng mới. Đầu ra của chương trình đang thực hiện chính xác những gì ta đã yêu cầu; nó hiển thị văn bản ta đã nhập, bao gồm cả dòng mới đó. Nó không phải là những gì ta muốn. Nhưng ta có thể sửa chữa nó.

Mở file greeting.rb trong editor :

  • nano greeting.rb

Tìm dòng này trong chương trình của bạn:

lời chào.rb
name = gets

Và sửa đổi nó để nó trông như thế này:

lời chào.rb
name = gets.chop

Điều này sử dụng phương thức chop của Ruby trên chuỗi mà ta đã chụp bằng gets . Phương thức chop loại bỏ ký tự cuối cùng khỏi một chuỗi. Trong trường hợp này, nó xóa ký tự dòng mới ở cuối chuỗi được tạo khi ta nhấn ENTER .

Lưu và thoát nano . Nhấn CTRL+X , sau đó nhấn y khi được yêu cầu lưu file .

Chạy lại chương trình:

  • ruby greeting.rb

Lần này, sau khi bạn nhập tên của bạn và nhấn ENTER , bạn sẽ nhận được kết quả mong đợi:

Output
Please enter your name. Sammy Hi, Sammy! I'm Ruby!

Đến đây bạn có một chương trình Ruby lấy đầu vào từ user và in nó trở lại màn hình.

Kết luận

Đến đây bạn đã biết cách nhắc nhập, xử lý kết quả và hiển thị kết quả , hãy thử mở rộng chương trình của bạn hơn nữa. Ví dụ: hỏi màu yêu thích của user và yêu cầu chương trình nói rằng màu yêu thích của nó là màu đỏ. Bạn thậm chí có thể thử sử dụng kỹ thuật tương tự này để tạo một chương trình Mad-Lib đơn giản.


Tags:

Các tin liên quan