Ruby on Rails 2.1 - Giới thiệu

Ruby là gì?

Trước khi sử dụng Rails, chúng ta hãy tóm tắt lại 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,
  • Python dễ sử dụng và dễ học, 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 -

  • Các vấn đề về hiệu suất - 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 ++.

  • Mô hình phân luồng - Ruby không sử dụng các luồng gốc. 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".

#!/usr/bin/ruby -w

# The Hello Class
class Hello
   # Define constructor for the class
   def initialize( name )
      @name = name.capitalize
   end

   # Define a ruby method
   def salute
      puts "Hello #{@name}!"
   end
end

# Create a new object for Hello class
obj = Hello.new("Ruby")

# Call ruby method
obj.salute

Điều này sẽ tạo ra kết quả sau:

Hello Ruby

Để hiểu đầy đủ về Ruby, vui lòng đi qua của chúng tôi Ruby Hướng dẫn

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 một tệp HTML. ERb đọc từng chữ một và sau đó tại một thời điểm nhất định, khi gặp mã Ruby, 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 <%%>.

  • Nếu bạn muốn in ra kết quả của quá trình thực thi mã, như một phần của đầu ra, hãy đặt mã giữa <%= and %>.

Đây là một ví dụ. Lưu mã trong tệp erbdemo.erb. Lưu ý rằng tệp Ruby sẽ có phần mở rộng.rb, trong khi tệp Ruby nhúng sẽ có phần mở rộng .erb.

<% 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.

c:\ruby\>erb erbdemo.erb

Đ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ả.

  • 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ể làm với một khuôn khổ 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.

  • Mã và lược đồ cơ sở dữ liệu của bạn là cấu hình!

  • 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 bằng cách sử dụng mẫu Model-View-Controller (MVC).

  • Là một full-stack framework 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 í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!

Đừng lặp lại chính mình (DRY)

DRY là một khẩu hiệu bạn sẽ nghe thường xuyên liên quan đến Ruby on Rails, có nghĩa là bạn chỉ cần viết mã hành vi một lần và bạn không bao giờ phải viết mã tương tự ở hai nơi khác nhau. Điều này rất quan trọng vì bạn ít có khả năng mắc lỗi hơn bằng cách chỉ sửa đổi mã của mình ở một nơi.

Đ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.

Metaprogramming- Các khuôn khổ khác sử dụng tạo mã mở rộng từ đầu. Kỹ thuật siêu lập trình sử dụng chương trình để viết chương trình. Ruby là một trong những ngôn ngữ tốt nhất để lập trình siêu hình, và Rails sử dụng tốt khả năng này. Rails cũng sử dụng tạo mã nhưng phụ thuộc nhiều hơn vào lập trình siêu ứng dụng để nâng cao.

Active Record- 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 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.

Convention over configuration- 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.

Scaffolding- 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.

Ajax at the core- Ajax là công nghệ đã trở thành tiêu chuẩn để cung cấp khả năng tương tác cho các trang web mà không bị xâm nhập. Ruby on Rails hỗ trợ đắc lực cho công nghệ Ajax và nó là một phần của các thư viện cốt lõi. Vì vậy, khi bạn cài đặt RoR, hỗ trợ Ajax cũng được cung cấp cho bạn.

Built-in testing- 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.

Three environments- 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.

Rails 2.1.0 là gì?

Đây là phiên bản mới nhất của Ruby on Rails, được phát hành bởi nhóm nòng cốt của Rails vào thứ bảy ngày 31 tháng 5 năm 2008.

Phiên bản này là một cải tiến hơn nữa trên RoR 2.0, một lần nữa thực sự là một bản phát hành tuyệt vời, hoàn toàn được trang bị các tính năng mới tuyệt vời, nhiều bản sửa lỗi và lượng đánh bóng đáng kinh ngạc so với các phiên bản trước đó của nó RoR 1.2.x.

Hướng dẫn này sẽ đưa bạn qua tất cả các tính năng quan trọng có trong phiên bản RoR 2.1.0 mới nhất.

Sau hướng dẫn này, bạn sẽ có thể xây dựng trang web của mình bằng một trong những công nghệ Web 2.0 tốt nhất được gọi là Ruby on Rails v2.1.0.