Những lý do tại sao bạn nên học Ruby On Rails
Với lập trình web thì mọi người chẳng còn xa lạ gì về Ruby On Rails, hay được viết tắt là RoR. Vậy Ruby On Rails là gì? Nó có khó không? Cần phải biết những gì để học?
Sau đây là 13 câu hỏi cơ bản về Ruby On Rails thường gặp mà bất cứ ai muốn bắt đầu học nó đều cần biết. :D
1. Ruby On Rails là một web framework
Bạn có thể gọi tắt là Rails hoặc là RoR. Rails thực chất được viết nên bởi ngôn ngữ Ruby, nên không thế nói Rails chính là Ruby mà Rails là một framework giúp developers có thể viết ra web applications một cách nhanh chóng và hiệu quả. Rails làm chúng ta thấy thoải mái và rể hiểu khi đọc và code, Rails khiến chúng ta cảm thấy như đang đọc một ngôn ngữ tự nhiên nào vậy. Và một điều thú vị nữa là, chúng ta hoàn toàn có thể tự viết ra một trang web mà không cần biết đến Ruby là gì, điều ấy đồng nghĩa với việc, chúng ta hoàn toàn có thể học Rails rồi sau đó mới nghiên cứu sâu tới ngôn ngữ Ruby.
2. Nhiều trang web lớn trên thế giới được phát triển bởi Ruby On Rails
Thực hư Ruby On Rails có thể làm ra những trang web lớn đồ sộ hay không thì check ngay những web sau đây để có câu trả lời nhé: Basecamp, Airbnb, Bleacher Report, Fab.com, Scribd, Groupon, Gumroad, Hulu, Kickstarter, Pitchfork, Sendgrid, Soundcloud, Square, Yammer, Crunchbase, Slideshare, Funny or Die, Zendesk, Github, Shopify.
3. Ruby On Rails is full-stack
Khi bạn cảm thấy thoải mái với Ruby On Rails thì tất nhiên rồi giống như tiêu đề, bạn sẽ là một full-stack developer. Tại sao lại như vậy? Khi bạn cần làm ra một web app nào đó, bạn sẽ phải có DB(SQL), bạn phải có front-end, và tất nhiên để nó hoạt động được thì bạn phải có back-end. Bởi vậy, khi hoàn thành 1 Rails project nào đó thì những thứ bạn thu lại được không chỉ có Ruby, không chỉ có Rails mà còn có cả HTML/CSS, Javascript, SQL language hoặc một vài ngôn ngữ nữa được nhúng vào Rails, thậm chí cả có một chút về infra.
4. Ruby on Rails có cả một cộng đồng lớn
Khi bạn gặp phải một vấn đề nào đó khi đang học hoặc develop Rails, bạn hoàn toàn có thể ném nó lên google và Enter, có cả tá diễn đàn đã có sẵn câu trả lời cho bạn. Nên là đừng lo lắng khi start với Rails nhé.
5. Bạn sẽ mất bao lâu để học Ruby On Rails
Nếu bạn đã tiếp cận với bất cứ 1 framework nào đó rồi thì việc làm quen với Rails cho tới khi bạn cảm thấy thoải mái để chiến project với đồng đội thì là vài tuần. Còn không thì chỉ mất độ vài tháng thôi :)
6. Có rất nhiều open resource giúp web app của bạn trở nên mượt mà lấp lánh
Rails sử dụng gem để quản lý thư viện, nếu bạn cần thư viện nào đó, chỉ cần search rồi thêm vào Gemfile
và chạy 1 command bundle
mọi thứ tiếp theo Rails lo, còn bạn chỉ cần lôi ra và sử dụng thôi. :D
7. Vậy nên bắt đầu từ đâu khi mới bắt đầu với Ruby On Rails?
Nếu bạn chưa từng bắt đầu với một ngôn ngữ hay 1 framework nào khác thì hay bắt đầu từ HTML/CSS, sau đó nhảy thằng vào cuốn tutorial này, ban đầu bạn cứ làm theo nó đi, code từng dòng code một và đọc hiểu luôn, xem xem rails được cấu trúc như thế nào, và làm việc với rails thì Ruby được code ra làm sao.
8. Ruby on Rails sẽ giúp bạn luyện tập cực tốt
Khi học bạn sẽ có cơ hội hiểu sâu về thế nào là RESTfull resources, MVC framework, testing, awsome debugging on console, ...
Ban đầu Rails sẽ làm rất nhiều thứ khiến bạn phải thắc mắc tại sao lại như vậy, nhưng đừng lo lắng quá, thực chất Rails đã đảm nhiệm rất nhiều thứ cho bạn và cung cấp cho bạn một môi trường luyện tập cực tốt, cứ rùi mài rồi một ngày nào đó bạn sẽ hiểu tại sao Rails lại code như vậy và Rails đã được hoạt động ra sao.
9. Học Ruby on Rails cơ hội công việc sẽ cao?
Ở Việt Nam mà nói thì Rails không được ưa chuộng nhiều bằng các web framework khác nhưng bạn biết không Ruby là ngôn ngữ lập trình do người Nhật viết ra nên thị trường Nhật rất ưa chuộng Rails(Rails không phải do người nhật viết ra, nhưng Rails lại sử dụng ngôn ngữ của họ). Vì vậy bạn sẽ dễ dàng apply được ví nào đó từ các công ty Nhật ở Việt Nam, hoặc là có thể apply để được sang Nhật làm việc.
Trên đây là những lý do cơ bản mà mình đưa ra để trao đổi, nếu bạn thấy Ruby On Rails còn gì thú vị nữa thì comment bên dưới nhé! ;)