Hai tính năng mới nổi bật của Rails 5.0

Ngoc Huynh

Sau 6 tháng phát triển với sự ra mắt nhiều phiên bản thử nghiệm, cuối cùng phiên bản cuối cùng của Rails 5.0 đã chính thức được tung ra. Dự án đã thu hút hàng trăm sự đóng góp và hàng ngàn commits. Rails 5.0 ra đời chứng tỏ cộng động Rails vẫn duy trì và phát triển rất mạnh mẽ.

Trong phiên bản Rails 5.0 có hai tính năng chính mà chúng ta cần biết đó là:

Action Cable

Action Cable là một framework mới để thực hiện lập trình WebSockets trong Rails. Đây là giải pháp tích hợp toàn diện khi nó vừa quản lý các kết nối, kênh truyền từ phía server, và đồng thời là tầng JavaScript cho các tương tác phía client. Được thiết kế với mục đích đơn giản hóa các tính năng như chat, thông báo, trạng thái online v.v…

Điều thật sự đặc biệt trong Action Cable là khả năng sử dụng hoàn toàn Active Record khi lập trình Websocket. Chúng ta thậm chí có thể sử dụng ActionController::Renderer để render templates mà không cần phải ở trong controller action, khi chúng ta muốn tái sử dụng các template phía server cho responses của Websocket.

Action Cable chạy cùng với ứng dụng, vì vậy chúng ta cần chuyển đổi việc sử dụng development server từ Webrick sang Puma, web server cho phép chạy song song các quá trình.

API mode

Rails không chỉ là sự lựa chọn hoàn hảo khi bạn muốn xây dựng một ứng dụng full-stack, mà với phiên bản 5.0, Rails còn có khả năng xây dựng ứng dụng backend trả về JSON, cắt bỏ code phía client. Rails 5 giờ còn giúp cho công việc này trở nên dễ dàng hơn với -api mode. Nếu bạn tạo ra một ứng dụng Rails mới và sử dụng rails new backend –api, bạn sẽ tạo ra ứng dụng Rails để bạn làm việc với JSON, chứ không phải là HTML.

Mặc dù API mode đang phụ thuộc vào phương thức #to_json, bạn hoàn toàn có thể sử dụng kết hợp với Jbuilder, Active Model Serializers.

Chia sẻ bài viết ngay

Nguồn bài viết : http://weblog.rubyonrails.org/