Ruby on Rails (đôi khi là RoR) là khung ứng dụng web mã nguồn mở phổ biến nhất.
Nó được xây dựng bằng ngôn ngữ lập trình Ruby.
Bạn có thể sử dụng Rails để giúp bạn xây dựng các ứng dụng, từ đơn giản đến phức tạp, không có giới hạn nào đối với những gì bạn có thể thực hiện với Rails!
Khuôn khổ là gì?
Khung là một tập hợp mã, công cụ và tiện ích cung cấp cho bạn một cấu trúc cụ thể để làm việc khi bạn viết phần mềm.
Cấu trúc này giúp mã của bạn có tổ chức hơn.
Công việc của bạn trở nên dễ dàng khi bạn học cách sử dụng nó một cách chính xác.
Rails làm chính xác những gì?
Rails giúp bạn xây dựng trang web.
Loại trang web mà bạn sử dụng hàng ngày .
Các trang web cho phép bạn đăng nhập, để lại nhận xét và đánh giá, mua hàng…
Các đường ray được tạo từ một số thành phần để tạo điều kiện thuận lợi cho việc này.
Ví dụ :
Active Record giúp bạn đọc, tạo và cập nhật các bản ghi trong cơ sở dữ liệu của mình mà không cần phải là một chuyên gia về cơ sở dữ liệu.
Mặc dù cơ chế định tuyến cho phép bạn dễ dàng ánh xạ các URL (như /login
) cho các hành động cụ thể.
Nếu bạn phải viết mã tất cả những thứ này từ đầu, không có khuôn khổ, thì đó sẽ là một khối lượng công việc THỤ ĐỘNG.
Nhưng Rails xử lý tất cả các chi tiết này cho bạn …
Vì vậy, bạn có thể tập trung vào việc xây dựng các ứng dụng của riêng mình!
Ví dụ về ứng dụng Ruby on Rails
Ai đang sử dụng Rails?
Một số ví dụ về các trang web Ruby on Rails là gì?
Đây là một số :
- Github
- Shopify
- Ask.fm
- Kickstarter
- Viết nguệch ngoạc
- ConvertKit
- Twitch
- Instacart
- Zendesk
- SoundCloud
Đây không phải là những công ty nhỏ!
Và tất cả họ đều được hưởng lợi từ việc sử dụng Ruby on Rails để phục vụ khách hàng của họ.
Bạn có nên học Rails?
Nếu bạn đang tìm kiếm một sự nghiệp đầy thử thách, vui vẻ và sáng tạo, xây dựng các trang web tuyệt vời giúp ích cho mọi người thì Ruby on Rails có thể dành cho bạn.
Bất kỳ ai cũng có thể học Rails , ngay cả khi bạn không có kinh nghiệm lập trình.
Có thể mất nhiều thời gian hơn hoặc ít hơn tùy thuộc vào vị trí của bạn.
Nhưng mọi kỹ năng đều CÓ THỂ học và thành thạo.
Lợi ích của việc sử dụng Rails :
- Đây là một giải pháp tích hợp. Rails cung cấp cho bạn mọi thứ bạn cần để tạo một ứng dụng web .
- Quy ước Rails và cấu hình mặc định giúp bạn tiết kiệm rất nhiều công việc!
- Rails có hệ sinh thái tuyệt vời để bạn có thể tìm thấy tất cả các công cụ và hỗ trợ mà bạn có thể cần
- Nó đang được phát triển tích cực, vì vậy bạn thường xuyên nhận được các bản sửa lỗi và các tính năng mới!
Và lý do tốt nhất của tất cả :
“Bạn có thể sử dụng Ruby, ngôn ngữ vẫn là ngôn ngữ đẹp và sang trọng nhất mà tôi chưa từng gặp” - DHH, người tạo ra Ruby on Rails
Triết lý về Rails
Ruby on Rails là một khung công tác được khẳng định.
Một trong những ý kiến này là quy ước nên quan trọng hơn cấu hình.
Điều đó có nghĩa là gì?
Điều đó có nghĩa là bạn phải đưa ra ít quyết định hơn vì những người tạo ra Rails đã đưa ra những quyết định đó cho bạn.
Vì bạn phải đưa ra ít quyết định hơn nên bạn sẽ năng suất hơn và hoàn thành công việc nhanh hơn .
Nhưng nếu bạn muốn thay đổi một số trong số này, bạn có thể.
Một số ví dụ về quy ước trên cấu hình là gì ?
Rails tìm kiếm các tên tệp cụ thể khi tìm kiếm mã của bạn.
Ví dụ:nếu bạn có Book
model, Rails sẽ tìm kiếm một tệp có tên app/models/book.rb
.
Đây là quy ước.
Thay vì phải nói :
“Này Rails, đây là nơi để tìm tệp này”
Rails cho bạn biết vị trí của nó.
Tổng quan về đường ray dài mười nghìn thước
Làm thế nào để Rails phù hợp với bức tranh toàn cảnh của một ứng dụng web hoàn chỉnh?
Tôi đã vẽ một cái gì đó cho bạn :
Rails nhận các yêu cầu, định tuyến chúng đến hành động thích hợp, sau đó tương tác với cơ sở dữ liệu (thông qua ActiveRecord) để thực hiện yêu cầu. Sau đó, nó trả về kết quả (HTML hoặc JSON) cho người dùng.
Nếu bạn muốn phóng to phần Rails, chúng ta phải có một chút kỹ thuật.
Rails sử dụng kiến trúc MVC.
MVC là viết tắt của Model, View, Controller.
Đây là hình ảnh :
Các hành động được tổ chức thành bộ điều khiển, bộ điều khiển đưa ra quyết định về cách xử lý yêu cầu và họ yêu cầu cơ sở dữ liệu cung cấp bất kỳ dữ liệu nào mà nó cần.
Sau đó, bộ điều khiển hiển thị chế độ xem.
Chế độ xem là thiết kế và nội dung của trang .
Đây là sản phẩm cuối cùng sẽ được trả lại cho người dùng.
Ai đã phát minh ra Ruby on Rails?
David Heinemeier Hansson (DHH) phát hành Ruby on Rails 1.0 vào tháng 12 năm 2005.
Gần 14 năm sau, David vẫn đang làm việc trên Rails với một nhóm lớn những người đóng góp nguồn mở để làm cho nó tốt hơn và nhanh hơn.
Tại sao anh ấy lại tạo ra Rails?
“Tôi tạo Rails vì tôi muốn tận hưởng những gì tôi làm việc cùng” - DHH
Có vẻ như đó là một lý do khá tốt đối với tôi 🙂
Ruby vs Ruby on Rails
Ruby là một ngôn ngữ lập trình.
Ruby on Rails là một khung công tác được xây dựng dựa trên Ruby.
Sự khác biệt là gì?
Ruby là thứ chuyển đổi mã nguồn (bao gồm cả Rails) thành thứ mà máy tính của bạn có thể hiểu được.
Rails là một lớp trên Ruby .
Một lớp giúp bạn xây dựng các ứng dụng web.
Nhưng bản thân Ruby có thể làm được nhiều hơn thế , đó là một ngôn ngữ lập trình mạnh mẽ.
Dưới đây là một số điều bạn có thể làm:
- Bạn có thể thu thập thông tin và tìm kiếm các trang web để trích xuất thông tin
- Bạn có thể tự động hóa các tác vụ như sao lưu, cảnh báo và thông báo
- Bạn có thể xây dựng tất cả các loại công cụ và tiện ích, như trình phân tích cú pháp nhật ký, trình quét bảo mật, phân tích nội dung tệp…
Bài học rút ra là đây :
Rails làm cho Ruby trở thành một nền tảng thực sự tốt để xây dựng các ứng dụng web, nhưng cũng có một hệ sinh thái mạnh mẽ của các chương trình không phải Rails được xây dựng bằng Ruby.
Cách Bắt đầu Học tập
Bây giờ:
Đây là sai lầm lớn nhất mà nhiều người mắc phải .
Nhưng bạn có thể tránh nó nếu bạn hiểu điều này:
Tìm hiểu các khái niệm lập trình chung và ngôn ngữ lập trình Ruby đầu tiên .
Trước khi nhảy vào Rails!
Lý do rất đơn giản.
Bạn KHÔNG THỂ bắt đầu xây nhà bằng mái…
Nếu bạn không hiểu cơ sở về cách Rails hoạt động, bạn sẽ thấy bối rối.
Khi bạn thấy thông báo lỗi, nó sẽ giống như một ngôn ngữ nước ngoài.
Và điều đó sẽ RẤT khó chịu đối với bạn.
Giải pháp?
Bắt đầu bằng cách học Ruby.
Hãy kiên nhẫn, đảm bảo bạn sẽ học tốt mọi thứ.
Nếu bạn đang tìm kiếm một hướng dẫn Ruby thân thiện với người mới bắt đầu miễn phí, thì đây là một hướng dẫn tôi đã viết cho bạn.
Nó bao gồm tất cả những điều cơ bản.
Và nó có điều gì đó độc đáo mà hầu hết các hướng dẫn không:
- Nó thúc đẩy bạn tiếp tục.
- Nó giúp mọi thứ trở nên đơn giản.
- Nó cảnh báo bạn về những cạm bẫy có thể xảy ra và những điều cần đặc biệt chú ý.
Bạn đã sẵn sàng bắt đầu hành trình lập trình viên Ruby của mình chưa?
Bắt đầu học Ruby ngay bây giờ.