Ruby on Rails - Giới thiệu
Ruby là gì?
Trước khi sử dụng Rails, chúng ta hãy tóm tắt một vài điểm về Ruby, đây là cơ sở của Rails.
Ruby là sự kết hợp thành công của -
- Ý tưởng sang trọng của Smalltalk,
- Tính dễ sử dụng và dễ học của Python, và
- Chủ nghĩa thực dụng của Perl.
Ruby là -
- Một ngôn ngữ lập trình cấp cao.
- Được thông dịch như Perl, Python, Tcl / TK.
- Hướng đối tượng như Smalltalk, Eiffel, Ada, Java.
Tại sao lại là Ruby?
Ruby có nguồn gốc từ Nhật Bản và hiện nay nó đang trở nên phổ biến ở Mỹ và Châu Âu. Các yếu tố sau góp phần vào sự phổ biến của nó:
- Dễ học
- Mã nguồn mở (giấy phép rất tự do)
- Thư viện phong phú
- Rất dễ dàng để mở rộng
- Thực sự hướng đối tượng
- Ít mã hóa hơn với ít lỗi hơn
- Cộng đồng hữu ích
Mặc dù chúng ta có nhiều lý do để sử dụng Ruby, nhưng cũng có một số hạn chế mà bạn có thể phải cân nhắc trước khi triển khai Ruby -
Performance Issues - Mặc dù nó là đối thủ của Perl và Python nhưng nó vẫn là một ngôn ngữ thông dịch và chúng ta không thể so sánh nó với các ngôn ngữ lập trình cấp cao như C hoặc C ++.
Threading model- Ruby không sử dụng các luồng bản địa. Các luồng Ruby được mô phỏng trong VM thay vì chạy như các luồng OS gốc.
Mã Ruby mẫu
Đây là mã Ruby mẫu để in "Hello Ruby"
# The Hello Class
class Hello
def initialize( name )
@name = name.capitalize
end
def salute
puts "Hello #{@name}!"
end
end
# Create a new object
h = Hello.new("Ruby")
# Output "Hello Ruby!"
h.salute
Output - Điều này sẽ tạo ra kết quả sau:
Hello Ruby!
Ruby nhúng
Ruby cung cấp một chương trình tên là ERB (Embedded Ruby), được viết bởi Seki Masatoshi . ERB cho phép bạn đặt mã Ruby bên trong tệp HTML. ERB đọc từng chữ một và sau đó tại một thời điểm nhất định, khi nó gặp mã Ruby được nhúng trong tài liệu, nó bắt đầu thực thi mã Ruby.
Bạn chỉ cần biết hai điều để chuẩn bị tài liệu ERB -
Nếu bạn muốn một số mã Ruby được thực thi, hãy đặt nó vào giữa <% và %>.
Nếu bạn muốn kết quả của việc thực thi mã được in ra, như một phần của đầu ra, hãy đặt mã giữa <%= và %>.
Đây là một ví dụ. Lưu mã trong tệp erbdemo.rb. Lưu ý rằng tệp Ruby sẽ có phần mở rộng.rb -
<% page_title = "Demonstration of ERB" %>
<% salutation = "Dear programmer," %>
<html>
<head>
<title><%= page_title %></title>
</head>
<body>
<p><%= salutation %></p>
<p>This is an example of how ERB fills out a template.</p>
</body>
</html>
Bây giờ, hãy chạy chương trình bằng tiện ích dòng lệnh erb.
tp> erb erbdemo.rb
Điều này sẽ tạo ra kết quả sau:
<html>
<head>
<title>Demonstration of ERb</title>
</head>
<body>
<p>Dear programmer,</p>
<p>This is an example of how ERb fills out a template.</p>
</body>
</html>
Rails là gì?
Một khung ứng dụng web cực kỳ hiệu quả.
Được viết bằng Ruby bởi David Heinemeier Hansson.
Bạn có thể phát triển một ứng dụng web nhanh hơn ít nhất mười lần với Rails so với bạn có thể với một khung công tác Java điển hình.
Một khuôn khổ Ruby mã nguồn mở để phát triển các ứng dụng web dựa trên cơ sở dữ liệu.
Định cấu hình mã của bạn bằng Lược đồ cơ sở dữ liệu.
Không cần giai đoạn biên dịch.
Khung ngăn xếp đầy đủ
Bao gồm mọi thứ cần thiết để tạo ứng dụng web hướng cơ sở dữ liệu, sử dụng mẫu Model-View-Controller.
Là một khung công tác đầy đủ có nghĩa là tất cả các lớp được xây dựng để hoạt động liền mạch với nhau với ít mã hơn.
Yêu cầu ít dòng mã hơn các khuôn khổ khác.
Quy ước về cấu hình
Rails tránh các tệp cấu hình có lợi cho các quy ước, phản chiếu và phần mở rộng thời gian chạy động.
Mã ứng dụng và cơ sở dữ liệu đang chạy của bạn đã chứa mọi thứ mà Rails cần biết!
Điểm mạnh của Rails
Rails được tích hợp các tính năng giúp bạn làm việc hiệu quả hơn, với nhiều tính năng sau được xây dựng dựa trên một tính năng khác.
Lập trình siêu hình
Trong khi các khung công tác khác sử dụng cách tạo mã mở rộng từ đầu, thì khung công tác Rail sử dụng kỹ thuật Lập trình siêu thị để viết chương trình. Ruby là một trong những ngôn ngữ tốt nhất cho Metaprogramming và Rails sử dụng tốt khả năng này. Rails cũng sử dụng tạo mã nhưng dựa nhiều hơn vào Lập trình siêu cấp để nâng cao.
Bản ghi hoạt động
Rails giới thiệu khung Active Record, khung này lưu các đối tượng vào cơ sở dữ liệu. Phiên bản Rails của Active Record phát hiện ra các cột trong một lược đồ cơ sở dữ liệu và tự động đính kèm chúng vào các đối tượng miền của bạn bằng cách sử dụng lập trình siêu mẫu.
Quy ước về cấu hình
Hầu hết các khung phát triển web cho .NET hoặc Java buộc bạn phải viết các trang mã cấu hình. Nếu bạn tuân theo các quy ước đặt tên được đề xuất, Rails không cần cấu hình nhiều.
Đoạn đầu đài
Bạn thường tạo mã tạm thời trong giai đoạn đầu phát triển để giúp khởi động ứng dụng nhanh chóng và xem các thành phần chính hoạt động cùng nhau như thế nào. Rails tự động tạo ra nhiều giàn giáo mà bạn cần.
Kiểm tra tích hợp
Rails tạo các bài kiểm tra tự động đơn giản mà bạn có thể mở rộng. Rails cũng cung cấp mã hỗ trợ được gọi là bộ khai thác và đồ đạc giúp các trường hợp thử nghiệm dễ viết và chạy hơn. Sau đó, Ruby có thể thực hiện tất cả các bài kiểm tra tự động của bạn bằng tiện ích rake.
Ba môi trường
Rails cung cấp cho bạn ba môi trường mặc định: phát triển, thử nghiệm và sản xuất. Mỗi hoạt động hơi khác nhau, làm cho toàn bộ chu trình phát triển phần mềm của bạn dễ dàng hơn. Ví dụ, Rails tạo một bản sao mới của cơ sở dữ liệu Thử nghiệm cho mỗi lần chạy thử nghiệm.