Professional Documents
Culture Documents
Chuyên đề 2 - Ruby on Rails
Chuyên đề 2 - Ruby on Rails
1.1.2 Ruby là gì
Ruby là một ngôn ngữ lập trình hướng đối tượng, có khả năng phản ứng. Theo tác
giả, Ruby chịu ảnh hưởng bởi Perl, Smalltalk, Eiffel, Ada và Lisp. Ruby là ngôn
ngữ thông dịch và hướng đối tượng.
Ruby cung cấp nhiều mẫu hình lập trình, bao gồm lập trình hàm, hướng đối
tượng, mệnh lệnh, phản xạ. Nó sử dụng hệ thống kiểu biến động và tự động quản
lý bộ nhớ tự động.
Nó kết hợp ngôn ngữ lập trình Ruby với JavaScript, HTML và CSS để phát triển
các ứng dụng web thực thi trên máy chủ web. Vì nó chạy trên máy chủ web, nên
Ruby on Rails được phân loại là nền tảng phát triển ứng dụng web phía sau hoặc
phía máy chủ. Ruby on Rails giống như PHP trên Laravel và Symfony , hoặc như
Python trên Django. Sự hấp dẫn chính của Ruby on Rails đối với các nhà phát
triển nằm bên dưới sự nhỏ gọn và sang trọng của ngôn ngữ. Nó được thiết kế để
hỗ trợ phát triển nhanh nhằm mang lại năng suất và tính linh hoạt cho các nhóm
phát triển.
Mô hình MVC được Trygve Reenskaug đề ra vào năm 1979, mô hình này chia
ứng dụng làm 3 phần: model, view và controller. Là mô hình giúp ta có thể sử
dụng lại code đã viết.
Model
Một model đại diện cho các dữ liệu của ứng dụng và các quy tắc để điều khiển
dữ liệu đó. Trong trường hợp của Rails, các model được sử dụng chủ yếu để
quản lý các quy tắc tương tác với một bảng trong cơ sở dữ liệu tương ứng.
Trong hầu hết trường hợp, mỗi bảng trong cơ sở dữ liệu sẽ tương ứng với một
model trong ứng dụng. Phần lớn việc logic cho ứng dụng sẽ tập trung trong
các model.
View
View đại diện cho giao diện người dùng của ứng dụng. Trong Ruby on Rails,
View có nhiệm vụ tạo ra các đoạn c ode HTML để hiển thị lên trình duyệt của
người dùng, thông thường code HTML này có kèm theo dữ liệu được tạo ra từ
các phương thức trong controller.
Các dữ liệu được tạo ra sẽ được tạo ra từ các template, bạn cứ hình dung đây
giống như là một trình thông dịch nhỏ khác là được. Hiện có 3 loại template
trong Rails là Embedded Ruby (ERb), XML Builder và RJS. Trong đó phổ
biến nhất là ERb
Controller
Phần controller trong Rails là bộ phận trung tâm, có nhiệm vụ xử lý tương tác
giữa người dùng, view và model. Tuy nhiên chúng ta sẽ chỉ tập trung vào việc
phát triển các tính năng của website, còn việc kết nối giữa các thành phần này
sẽ được Rails giải quyết.
Cơ bản thì controller hỗ trợ các tính năng sau:
̶ Định tuyến (routing) các URL tới các phương thức/hàm/action tương
ứng. Ngoài ra controller còn định nghĩa các URL có cấu trúc thân thiện, dễ
nhìn.
̶ Quản lý cache, giúp tăng hiệu năng của hệ thống
̶ Quản lý các module hỗ trợ, giúp mở rộng các tính năng của template
̶ Quản lý session, giúp theo dõi các hoạt động đang diễn ra trên ứng dụng
Ghi chú:
- Danh mục tài liệu tham khảo phải xếp theo abc tên tài liệu, tác giả, nơi
và năm phát hành.
- Nếu xếp theo tên tác giả thì xếp abc theo họ, sau đó đến tên tài liệu, nơi
và năm phát hành.
- Danh mục tài liệu tham khảo xếp cuối cùng, sau các trang phụ lục.