Cách tốt nhất để học Rails. Tại sao Ruby on Rails là một trong những ngôn ngữ lập trình đầu tiên tốt nhất dành cho các nhà thiết kế. Tại sao Ruby là sự lựa chọn tốt nhất

Tài sản chính của bất kỳ nhà thiết kế web nào là có thể hiểu - và thậm chí sắp xếp - những gì đang diễn ra ở hậu trường.

Ít nhất, bạn nên học một số bài học lập trình. Tôi không nói về ngôn ngữ front-end, loại HTML và CSS - có thể bạn đã biết nhiều về những thứ này. Tôi đang nói về những thứ phía sau.

Nếu bạn biết cách đặt nền móng thì bạn có thể hiểu rõ hơn cách thiết kế phần còn lại của trang web. Vấn đề là việc học viết mã sẽ giúp bạn trở thành một nhà thiết kế uyên bác hơn. Ngoài ra, ai lại không muốn thuê một nhà thiết kế biết mọi thứ từ thiết kế đến phát triển trang web?

Bí quyết là chọn nơi bắt đầu. Học lập trình có thể quá trình phức tạp, đặc biệt nếu bạn chọn một trong những ngôn ngữ phức tạp hơn như C++ hoặc PHP.

Vì vậy, nơi tốt nhất để bắt đầu là gì? Chỉ có một câu trả lời: Ruby on Rails là một trong ngôn ngữ tốt nhất lập trình và một khuôn khổ để học những kiến ​​thức cơ bản về thiết kế.

Tại sao Ruby là tốt nhất sự lựa chọn tốt nhất?

Đối với người mới bắt đầu, Ruby là một trong những ngôn ngữ đơn giảnđể tìm hiểu, đặc biệt nếu bạn có một số kinh nghiệm viết HTML hoặc CSS, điều mà hầu hết các nhà thiết kế đều làm.

Một trong những chương trình đầu tiên bạn sẽ làm khi bắt đầu học một ngôn ngữ là "Xin chào thế giới!", chương trình này liên quan đến việc in những từ đó lên màn hình.

Với các ngôn ngữ như C++, có thể có từ năm đến bảy dòng mã chỉ để hiển thị hai từ đó. Nhưng nếu bạn sử dụng Ruby thì sẽ chỉ có một dòng và một lệnh.

Đặt "xin chào, thế giới!"

Đó là tất cả! Đó là tất cả những gì bạn cần để gõ dòng chữ "Xin chào thế giới!" trên màn hình. Khá dễ dàng phải không?

Ruby on Rails cũng là một ngôn ngữ rất khô khan. Là một trong những nguyên tắc phát triển, DRY là viết tắt của "Đừng lặp lại chính mình" - nghĩa là không lập trình lại một phần tử khi bạn có thể sử dụng phần tử bạn đã tạo. Điều này làm cho Ruby trở thành ngôn ngữ lập trình rất dễ sử dụng và được sử dụng phổ biến để phát triển vì nó nhằm mục đích hoàn thành một dự án một cách nhanh chóng và hiệu quả.

Ruby hay Rails?

Ruby là một ngôn ngữ lập trình. Rails là một framework sử dụng Ruby để hoàn thành công việc. Khung Ruby on Rails là một tập hợp mã đúc sẵn hoặc viết sẵn giúp tăng tốc quá trình tạo dự án mới. Ban đầu, nó được tạo ra để phát triển công cụ quản lý dự án Basecamp. Ngoài Basecamp, còn có các ứng dụng web phổ biến khác được xây dựng bằng Rails, chẳng hạn như 500px, ThemeForest và MyFitnessPal.

Khi bạn hiểu cách làm việc với ngôn ngữ Ruby và làm cho mọi thứ hoạt động trong khung Ruby On Rails, bạn có thể bắt đầu xây dựng các ứng dụng web.

Ruby đang ở đỉnh cao của sự nổi tiếng!

Nhờ sự bùng nổ về mức độ phổ biến của thiết bị di động và công nghệ luôn cập nhật, Ruby hiện đang cực kỳ phổ biến. Và có lẽ nó sẽ tiếp tục như vậy. Chỉ số TIOBE xếp Ruby là ngôn ngữ lập trình phổ biến thứ 13. Theo xu hướng mới nổi, Ruby cũng đang có nhu cầu cao đáng ngạc nhiên, theo Indeed.com.

Chỉ số TIOBE

Dù thế nào đi nữa, nhu cầu hay mức độ phổ biến, Ruby đều khá phổ biến. Điều này làm cho nó trở thành một trong những nơi tốt nhất để bắt đầu bởi vì một khi bạn đã thành thạo ngôn ngữ này, bạn có thể kiếm được việc làm khá nhanh chóng. Và đó là trước khi bạn bắt đầu học một ngôn ngữ khác để mở rộng kỹ năng của mình.

Ruby có một nền tảng vững chắc!

Đúng là một số ngôn ngữ khác đã xuất hiện nhiều hơn, nhưng ngay cả như vậy, sự hỗ trợ và tài liệu vẫn mờ nhạt so với những gì có sẵn cho Ruby. Các ngôn ngữ khác cũng thiếu sự gắn kết cộng đồng xung quanh một framework được hỗ trợ mạnh mẽ.

Nhờ khung Ruby On Rails, đã có rất nhiều mã có sẵn mà bạn có thể sử dụng trong các dự án của riêng mình. Ruby Gems, một thư viện Ruby framework, có hơn 600.000 thư viện để bạn lựa chọn.

Mỗi khi bạn học được điều gì đó mới, bạn cần rất nhiều tài liệu và sự hỗ trợ. Có rất nhiều nơi để tìm tài liệu giáo dục, hướng dẫn, hướng dẫn và thậm chí cả diễn đàn Hỏi đáp. Nếu bạn gặp phải vấn đề cụ thể, một tìm kiếm đơn giản trên web có thể sẽ khắc phục được sự cố đó. Nó quan trọng.

Tài liệu đơn giản và dễ dàng truy cập cần hỗ trợ khi bạn đang học Ngôn ngữ mới- khi bạn thực sự đang học điều gì đó mới.

Ruby "cho phép" kiểm soát nhiều hơn về thiết kế

Nếu bạn chỉ là một nhà thiết kế web, việc tạo một trang web có thể là một quá trình lâu dài và phức tạp. Khi bạn ngồi lại với một lập trình viên và thảo luận về back-end cần thiết cho trang web của mình, bạn thường phải hy sinh giao diện người dùng để mọi thứ hoạt động bình thường.

Cuối cùng, điều này có thể tạo ra một sản phẩm trông hoàn toàn khác so với hình ảnh ban đầu của bạn. Lập trình viên có thể không quan tâm, nhưng đối với bạn nó có thể sẽ có vấn đề.

Bạn sẽ không gặp phải vấn đề loại này, nếu bạn tự lập trình. Bạn sẽ không nhất thiết phải phụ thuộc vào người khác để hoàn thành một dự án và bạn sẽ hiểu rõ hơn nhiều về những gì có thể đạt được từ góc độ phát triển. Chắc chắn đã có lúc mục tiêu dự án của bạn quá cao đối với một lập trình viên hoặc nhóm phát triển? Khi bạn học một ngôn ngữ như Ruby, bạn có thể dễ dàng hiểu được nhu cầu và khả năng của ngôn ngữ đó.

Về cơ bản, Ruby được thiết kế để sử dụng trong các ứng dụng web và phát triển web, khiến nó trở thành một nơi lý tưởng cho các nhà thiết kế web đầy tham vọng. Khi bạn hiểu ngôn ngữ và tìm hiểu cách sử dụng khung Ruby on Rails, bạn sẽ có nhiều quyền kiểm soát hơn đối với các dự án của mình.

Học Ruby ở đâu?

Hầu hết Cách tốt nhất học một ngôn ngữ là đắm mình vào nó và làm việc với nó. Có rất nhiều hướng dẫn và hướng dẫn mà bạn có thể tham khảo. Nếu bạn đã phát triển bộ nhớ hình ảnh, và hiểu rõ hơn nhờ có phần trình bày trực quan, sau đó vào YouTube - có sự lựa chọn lớn video đào tạo.

Nếu bạn muốn đào tạo theo phong cách lớp học truyền thống, bạn có thể tham gia đào tạo trên các trang web lập trình đặc biệt. Bạn không cần phải học đại học hoặc cao đẳng để có được việc làm.

Một trong những tài nguyên yêu thích của tôi - và hoàn toàn miễn phí - để học Rails là Hướng dẫn về Rails của Michael Hartle. Nó đưa bạn từ các dự án đơn giản đến phức tạp theo tốc độ học tập của riêng bạn và bạn có thể bắt đầu lại từ đầu mà hoàn toàn không có kiến ​​thức về Ruby on Rails.

Cho dù bạn chọn con đường học tập nào, hãy nhớ rằng, luyện tập sẽ tạo nên sự hoàn hảo. Đặt mục tiêu cá nhân là dành một khoảng thời gian nhất định mỗi ngày để làm việc với Ruby. Hãy bám sát những mục tiêu này và kiên trì. Trước khi bạn hoàn toàn hiểu được ngôn ngữ này, bạn đã là một chuyên gia có thể tạo ra những dự án tuyệt vời.

Ruby bắt đầu được phát triển vào ngày 23 tháng 2 năm 1993 và được phát hành vào năm 1995. Cái tên này được lấy cảm hứng từ ngôn ngữ Perl, nhiều cú pháp và ngữ nghĩa được mượn từ Ruby (ngọc trai - “ngọc trai”, ruby ​​​​- “ruby”). Mục tiêu của sự phát triển là tạo ra một ngôn ngữ lập trình có thể diễn giải và hướng đối tượng thực sự, dễ phát triển.

Ngôn ngữ có tính độc lập hệ điều hành triển khai đa luồng, gõ động mạnh, thu gom rác và nhiều tính năng khác. Việc triển khai đa nền tảng của trình thông dịch ngôn ngữ là hoàn toàn miễn phí.

Ruby on Rails (RoR) là một framework được viết bằng ngôn ngữ Lập trình Ruby. Anh ấy thực hiện mẫu kiến ​​trúc Model-View-Controller cho các ứng dụng web, đồng thời cung cấp khả năng tích hợp của chúng với máy chủ web và máy chủ cơ sở dữ liệu. Đang mở phần mềm và được phân phối theo giấy phép MIT.

Để giúp bạn tìm hiểu những công nghệ này, chúng tôi đã biên soạn tuyển tập sách. Như mọi khi, nếu bạn biết một cuốn sách không có trong tài liệu này, hãy chia sẻ nó trong phần bình luận.

Cuốn sách này dành cho những ai muốn viết Ruby như một người chuyên nghiệp. Nó cho bạn biết cách thiết kế các API đẹp mắt và làm việc với các kỹ thuật lập trình chức năng. Cuốn sách không phù hợp với người mới bắt đầu nhưng với những ai đã hiểu biết về Ruby thì chắc chắn sẽ rất hữu ích.

Mục đích của cuốn sách này là dạy người đọc sử dụng ngôn ngữ Ruby một cách hiệu quả. Cuốn sách bao gồm Ruby 2.1. Ấn phẩm bao gồm khoảng 400 ví dụ khác nhau, kèm theo lời trình bày rõ ràng về vấn đề và giải pháp với các nhận xét chi tiết.

Cuốn sách có ngưỡng đầu vào khá thấp. Bạn không cần phải biết những điều cơ bản về phát triển web để tìm hiểu nó. Cuốn sách đề cập đến Ruby on Rails, một framework phổ biến để phát triển các ứng dụng web từ đầu. Tác giả Michael Hartl, ngoài Ruby on Rails, còn giới thiệu đến người đọc những kiến ​​thức cơ bản về ngôn ngữ Ruby, ngôn ngữ truy vấn SQL, CSS, HTML. Cuốn sách dành nhiều sự quan tâm công dụng thực tế khả năng khung. Bạn cũng có thể đọc một đoạn của cuốn sách.

Và cuốn sách này sẽ hữu ích cho người mới bắt đầu. Độ phức tạp của nó tăng dần và mỗi phần tiếp theo sử dụng các kỹ năng có được ở phần trước.

Với “Học Ruby”, bạn sẽ học trong thực tế tất cả các khả năng của ngôn ngữ này một cách dễ dàng và thú vị, điều này lần đầu tiên nhanh chóng chiếm được cảm tình của các lập trình viên ở California và sau đó là ở Nga.

Sau khi đọc cuốn sách này, bạn sẽ học cách viết mã tinh tế bằng cách sử dụng tất cả các tính năng độc đáo của nó.

Cuốn sách này đi sâu vào chi tiết tổ chức nội bộ Ngôn ngữ Ruby. Người đọc không cần phải biết về Ruby nhưng kiến ​​thức về C và đặc biệt là các nguyên tắc OOP sẽ là một điểm cộng rất lớn.

Cuốn sách này rất hay để bắt đầu với Ruby. Nó bao gồm tất cả những điều cơ bản cần thiết, từ cài đặt ngôn ngữ đến xử lý tệp và OOP. Mỗi chủ đề được cung cấp ví dụ rõ ràng.

Cuốn sách này nói về một trong những tính năng thú vị nhất của Ruby - khối. Chúng tương tự như các bao đóng và lambda và được sử dụng như trong cấu trúc đơn giản ngôn ngữ như các khối và trong kỹ thuật phức tạp.

Cuốn sách này được chia thành nhiều phần có độ khó khác nhau. Đầu tiên chúng ta nói về cách thiết lập và các tính năng cơ bản của Ruby, sau đó chúng ta nói về thư viện chuẩn và các chủ đề nâng cao.

Cuốn sách này trình bày những kiến ​​thức cơ bản về phát triển web bằng cách sử dụng framework Ruby on Rails phổ biến. Để giúp người đọc có ý tưởng làm việc với các dự án thực tế, cuốn sách bao gồm các ví dụ sử dụng Git, GitHub và Heroku.

Cuốn sách này nói về việc sử dụng các nguyên tắc OOP trong các dự án web Ruby on Rails. Trọng tâm chuyển sang một bên giải pháp thiết thực, tận dụng tốt nhất cách tiếp cận hướng đối tượng và "Rails way".

Học một ngôn ngữ lập trình mới có thể mất nhiều thời gian và có thể cực kỳ nhàm chán. Các nhà phát triển .Net chắc chắn sẽ rất tức giận và thốt lên: “Tại sao tôi lại cần phải học điều này, bởi vì tôi là một nhà phát triển .Net chuyên nghiệp và lịch trình hàng ngày của tôi khó có thể bị dồn nén trong quá trình học một ngôn ngữ mới! ” Nhưng đây sẽ là một tuyên bố cực kỳ hấp tấp, vì khi học ngôn ngữ lập trình mới, bạn học được rất nhiều điều mới và hữu ích, đặc biệt nếu ngôn ngữ này là phiên bản cập nhật một ngôn ngữ khác đã có từ trước. Ruby là một trong những loại ngôn ngữ này. Tôi đồng ý rằng quá trình chuyển từ một nhà phát triển mới vào nghề thành một nhà phát triển chuyên nghiệp với một ngôn ngữ lập trình cụ thể là quá trình khó khăn nhất, nhưng trải nghiệm đó rất đáng giá. Bây giờ tôi chỉ có thể giúp bạn tăng tốc và tôi chắc chắn rằng bạn chắc chắn sẽ không muốn dừng lại. Hãy thư giãn đi!

Lưu ý: Xin lưu ý rằng bài viết này chỉ giới thiệu sơ qua về Ruby (ngôn ngữ lập trình) và Rails (nền tảng ứng dụng). mục tiêu chính là giúp bạn bắt kịp với Ruby và thúc đẩy bạn tạo động lực cần thiết để bắt đầu học một ngôn ngữ lập trình mới.

Ruby là gì?

Ruby, như đã nói, là sự kết hợp cập nhật của các phương pháp lập trình khác nhau. Ruby là sự kết hợp tuyệt vời giữa cách tiếp cận quy trình làm việc dễ hiểu của Python, sự tinh tế của Smalltalk và kiểu dáng gọn nhẹ đi kèm với quá trình phát triển Perl. Ruby là một cấp độ cao của lập trình hướng đối tượng (như trường hợp của hầu hết các ngôn ngữ lập trình khác hiện nay), bắt đầu từ giữa những năm 90 ở Nhật Bản. Theo thời gian, Ruby lan sang Hoa Kỳ và Châu Âu.

Ruby được biết đến với hệ thống kiểu động và phân bổ bộ nhớ tự động. Dưới kiểu độngÝ tôi là hầu hết các kiểu được kiểm tra trong chương trình Ruby đều được thực hiện trong thời gian chạy, điều đó có nghĩa là bạn không phải lo lắng về kiểu số nguyên hoặc kiểu chuỗi. Ruby sẽ làm điều này cho bạn. Chúng ta sẽ thấy điều này trong một ví dụ nhỏ Sau đó.

Mục tiêu chính khi ra mắt Ruby là giúp mọi người tương tác với máy móc và hiểu mã dễ dàng hơn. Người sáng lập Ruby, Yukihiro Matsumoto, nhấn mạnh vào ý tưởng rằng Ruby được thiết kế để giúp các lập trình viên làm việc hiệu quả hơn chứ không phải để tối ưu hóa ứng dụng ở phía máy.

“Mọi người thường, đặc biệt là các kỹ sư máy tính, tập trung sự chú ý vào máy móc. Họ nghĩ rằng bằng cách này họ có thể tăng tốc độ vận hành của máy, họ có thể tăng hiệu quả của nó, rằng họ có thể cải thiện mọi thứ, mọi thứ, mọi thứ liên quan đến máy móc.” Họ bị ám ảnh bởi ô tô. Nhưng điều chúng ta thực sự cần làm là tập trung vào con người, chăm sóc họ và giúp chúng ta làm việc với các ứng dụng thông qua máy móc dễ dàng hơn. Chúng ta là thực và còn sống, còn máy móc chỉ tuân theo chúng ta.

Rails là gì?

Rails là một nền tảng ứng dụng cực kỳ hiệu quả được viết bằng Ruby bởi David Heinemeier Hansson. Người ta ước tính rằng việc phát triển một ứng dụng web trên Rails nhanh hơn 10 lần so với trên nền tảng dựa trên Java. Rails là một nền tảng dựa trên Ruby (tất nhiên rồi!) và nguồn mở được phân phối. mã nguồn, có thể được sử dụng để tích hợp cơ sở dữ liệu nhanh chóng và dễ dàng.

Rails được biết đến với những ý tưởng đặc biệt xuất sắc đã cho phép nhiều cách tiếp cận mới trong lập trình và tạo ra cấu trúc động lập trình. Mã ứng dụng chính và cơ sở dữ liệu cập nhật sẽ luôn bao gồm tất cả các thuộc tính Ruby cần thiết để chạy chương trình từ đầu đến cuối.

Chương trình Ruby thông thường

Hãy xem sau này mọi chuyện sẽ đơn giản và thú vị như thế nào nhé:

Mã số:
cá nhân = “Tôi không yêu bạn gái của mình”
đặt cá nhân
Tại lối ra:
Tôi không yêu bạn gái của mình
Vâng vâng! Không khởi tạo, không có dấu chấm phẩy và không có phương thức.

Bây giờ chúng ta hãy thử xem sự khác biệt giữa PHP và Ruby bằng một ví dụ trong đó chúng ta cần đảo ngược một chuỗi:

PHP:
strrev(“chuỗi”);
Ruby:
“chuỗi”. đảo ngược
Thì đấy! Chúng tôi hầu như không lãng phí thời gian và đảo ngược hoàn toàn trình tự hồ sơ. Cần phải tính đến sự khác biệt trong nỗ lực của cả hai ngôn ngữ. Ngôn ngữ lập trình dựa trên Ruby giúp đơn giản hóa rất nhiều quá trình viết chương trình. Điều này gợi nhớ đến việc viết bằng tiếng Anh hơn là bằng ngôn ngữ lập trình. Đây là tương lai cho tất cả các ngôn ngữ.

Lợi ích của việc sử dụng Ruby (và Rails)

Mọi người đều biết rằng thế giới Ruby rất rộng lớn và ngày nay chúng ta thậm chí còn chưa chiếm được 1%, nhưng mục này sẽ làm cho bạn cảm thấy sức mạnh của ngôn ngữ này lập trình và sẽ khuyến khích bạn bắt đầu tự mình khám phá nó. Bây giờ chúng ta hãy đi sâu vào thế giới lợi ích của Ruby:

* khả dụng. Như đã nêu trước đó, đây là một trong những ưu điểm chính của Ruby. Là một ngôn ngữ lập trình, Ruby rất tinh tế và rất giống với tiếng anh. Nó giống với ngôn ngữ nói thông thường giúp người mới bắt đầu làm quen với Ruby dễ dàng.

* Chủ nghĩa Laconic và quyền lực. Ví dụ trên cho chúng ta thấy mã Ruby ngắn gọn như thế nào. Nó càng ngắn càng tốt. Ngoài ra, Ruby là ngôn ngữ mạnh mẽ như các ngôn ngữ khác vì đây là ngôn ngữ lập trình hướng đối tượng cấp độ cao.

* Không cần phải phát minh lại bánh xe. Rails (dựa trên Ruby) là một giao diện lập trình mà bạn không cần phải sáng chế lại bánh xe. Nó tạo ra mã có thể được sử dụng lại trong các trường hợp khác nhau.

* Thử nghiệm tích hợp. Rails nổi tiếng vì tính bảo mật và khả năng vá lỗi của nó. Nền tảng sẽ cung cấp cho bạn những lựa chọn khả thi viết mã, điều này sẽ tạo điều kiện thuận lợi rất nhiều cho quá trình phát triển. Ngoài ra, Rails còn cung cấp một số thử nghiệm đơn giản có thể được mở rộng theo yêu cầu của người lập trình.

* Môi trường Dev, Test và Prod. Rails cho phép bạn bắt đầu dự án của mình trong ba môi trường khác nhau được gọi là Dev, Test và Prod. Cả ba môi trường đều hoạt động hơi khác nhau.

Lựa chọn

Bây giờ chúng ta hãy xem một số trang web (phổ biến) đã được phát triển bằng công cụ Ruby. Bạn sẽ thấy các nhà thiết kế quản lý dự án của họ bằng Ruby một cách thông minh như thế nào.


02.


03.


04.


05.


06.

Tác giả đã được thôi thúc viết văn bản này bằng cách nghiên cứu một số điều được tìm thấy trong Mạng lưới toàn cầu các tài liệu có thể được chỉ định dưới cùng một tiêu đề/thẻ: Tôi đã học Ruby như thế nào(hoặc Ruby on Rails, PHP, JS, C++, v.v.) trong ba ngày.

Hay đại loại thế. Đến lượt tác giả, ngay lập tức nhớ lại (những liên tưởng không thể kiểm soát được) một số giai thoại, được thống nhất lại bởi một chủ đề chung, bao gồm việc đánh giá đặc điểm của những hành động có thể được thực hiện một cách ngu ngốc... Ngôn ngữ Nga mạnh mẽ và có tính cách ngôn đến khó tin, nhưng , thật không may, dường như không thể trích dẫn những kiệt tác này ở đây; Theo đó, không còn gì để làm ngoài việc cung cấp cho người đọc một phiên bản được viết riêng của tài liệu trong bộ truyện. Cách học cách làm việc trong Ruby on Rails một cách thích thú và tương đối nhanh chóng.

Bạn luôn có thể tìm thấy một ví dụ hoạt động của mã được mô tả trong bài viết, cùng với các Ví dụ về Rails khác trên blog thử nghiệm của tác giả trên herokuapp.com, xin chào mừng bạn.

Kỹ thuật này rất đơn giản và tác giả hoàn toàn không khẳng định vinh quang của người khám phá ở đây: điều cần thiết là nó phải thú vị và kết quả sẽ không khiến bạn phải chờ đợi. Sẽ không có hại gì nếu bạn cố lợi dụng điểm yếu của mình, bởi vì đôi khi sự phù phiếm có thể có lợi cho chính nghĩa; kết quả của sự phát triển phải đạt đến mức có thể được giới thiệu một cách tự hào với độc giả, bạn bè và đồng nghiệp trên Internet, được triển khai ở đâu đó trên Heroku hoặc Amazon Ngoài ra - để chúng ta có thể quay lại với chúng nhiều lần, xây dựng lại và cải thiện, các diễn đàn và StackOwerflow sẽ giúp đỡ tất cả chúng ta. Vì thế tôi nói, tại sao trước tiên bạn không viết blog của mình trên Viên ngọc trên tay vịn?

Tôi khuyên bạn nên bắt đầu với sổ ghi chép Bắt đầu với Rails xuất sắc hoặc bản chuyển thể Rails bằng tiếng Nga dành cho người mới bắt đầu, cũng như Xây dựng một blog bằng Ruby on Rails và các tài liệu của blog này, các liên kết có thể dễ dàng tìm thấy ở thanh bên trái, có thể cũng giúp đỡ. Và sau đó - thế thôi, rồi phép thuật, lúc đầu mọi thứ được viết ra như kim đồng hồ, mở bảng điều khiển - và chuyển tiếp... tác giả coi nhiệm vụ của mình là chỉ đưa ra một số giải thích và khuyến nghị kỹ thuật được thiết kế để giúp người thành thạo dễ dàng hơn để tìm và có được Mặt sáng của Thần lực, và không còn Togo nữa. Đây chỉ là trận chiến của bạn, hãy mạnh dạn tiến về phía trước và giành chiến thắng trở về.

Vì thế. Từng bước của sách hướng dẫn đầu tiên đã được hiệu chỉnh hoàn hảo và tôi hy vọng sẽ không gây rắc rối cho bạn; tất cả những gì bạn cần là phải chú ý, lặp lại cẩn thận các bước chi tiết... và sau một giờ, blog đầu tiên của bạn đã sẵn sàng, bạn có thể nghỉ ngơi và chuyển sang blog thứ hai, thú vị hơn một chút. Và chính ở đây, có lẽ một vài lời khuyên chia tay có thể hữu ích mà bây giờ chúng ta sẽ tiến hành.

Hãy bắt đầu với tuyên bố rằng các phương thức này khá có khả năng (như một tùy chọn) trông giống như những gì được hiển thị bên dưới, nhưng không giống như trong bản gốc:

ứng dụng/bộ điều khiển/posts_controller.rb

# Hành động cập nhật cập nhật bài viết với cái mới thông tin def cập nhật if @post.update_attributes(post_params) flash[:notice] = "Bài đăng được cập nhật thành công!" redirect_to post_path else flash[:alert] = "Lỗi cập nhật bài viết!" render:edit end end # Hành động show hiển thị từng bài đăng sau khi truy xuất id def show end # Hành động destroy sẽ xóa bài đăng vĩnh viễn khỏi cơ sở dữ liệu def destroy @post = Post.find(params[:id]) if @post . destroy flash[:notice] = "Xóa bài viết thành công!" redirect_to post_path else flash[:alert] = "Lỗi cập nhật bài viết!" kết thúc kết thúc

Nhưng hãy thử cái này cái kia, tại sao không. Tiếp tục nào.

Blog thứ hai, mặc dù phức tạp hơn (đã thêm người biên tập bài viết CKEditornghĩ ra, một công cụ linh hoạt để xác thực trong các ứng dụng Rails), vì lý do nào đó thiếu khả năng để lại nhận xét trong bản gốc. Bạn sẽ phải tự mình lấp đầy sự thiếu hụt này: tiến hành tương tự với mô tả cách tạo blog đầu tiên, chỉ cần những thay đổi rất nhỏ: nói một cách đơn giản, thay vì bài báobài viết bạn sẽ có blog đầu tiên bưu kiệnbài viết trong blog thứ hai, về cơ bản đó là sự khác biệt. Hãy cẩn thận và mọi thứ sẽ ổn thôi.

xác thực lại Bạn cũng sẽ phải tự mình liên kết đến các bình luận: vâng, vâng, đây không phải là Joomla dành cho bạn, hãy làm quen với nó. Tuy nhiên, những nỗ lực to lớn là không cần thiết; quá trình kết nối xác thực lạiđược mô tả chi tiết trong bài viết Kết nối Recaptcha trong ứng dụng Rails. Tiếp theo, nó không thừa để điều chỉnh nghĩ ra theo cách mà blog hoạt động (ít nhất là lúc đầu!) ở chế độ một người dùng, cho phép nhiều độc giả ở chế độ CHỈ ĐỌC, nói cách khác, chúng tôi sẽ cấm đăng ký người dùng mới ngay từ đầu. Có khá nhiều công thức khác nhau trên Internet về cách thực hiện việc này, nhưng theo tôi, cách hack hiệu quả nhất thuộc loại này là trong Wiki phát minh, trong tài liệu có tên Cách thực hiện: Thiết lập phát minh như một hệ thống người dùng duy nhất. Cụ thể: chúng tôi tạo một bộ điều khiển mới:

ứng dụng/bộ điều khiển/registrations_controller.rb:

Đăng ký lớpBộ điều khiển< Devise::RegistrationsController before_action:one_admin_registered?, only: [:new, :create] protected def one_admin_registered? if ((Admin.count == 1) & (admin_signed_in?)) redirect_to root_path elsif Admin.count == 1 redirect_to new_admin_session_path end end end

sau đó chúng tôi ghi đè nó trong Routes.rb và thế là xong:

#devise_for:admins think_for:quản trị viên, người kiểm soát: ( đăng ký: "đăng ký")

CKEDITOR.editorConfig = function(config) ( // config.enterMode = 2; // bị vô hiệu hóa

Hoàn toàn config.enterMode = CKEDITOR.ENTER_BR // nhấn phím ENTER KEY
config.shiftEnterMode = CKEDITOR.ENTER_P; //nhấn phím SHIFT + ENTER KEYS

Config.autoParagraph = false; // dừng việc chèn tự động

Vào trọng tâm);

Có lẽ, đối với những người mới bắt đầu, đây thực sự là tất cả… chết tiệt, tôi gần như quên mất điều quan trọng nhất. Nếu bạn triển khai blog mới sẽ Heroku- thêm ba dòng này vào

config/application.rb

Config.assets.precompile += Ckeditor.assets config.assets.precompile += %w(ckeditor/*) config.autoload_paths += %W(#(config.root)/app/models/ckeditor)

Nếu không thì CKEditor sẽ từ chối làm việc cho bạn ở nơi mới.

Hôm nay tôi tìm thấy một câu chuyện trên Internet về cách một người tên James Fend đã học Ruby on Rails trong 12 tuần. Dưới đây bạn có thể đọc bản dịch tương đối chính xác của câu chuyện này và hy vọng sẽ có cảm hứng để khám phá khuôn khổ tuyệt vời này (và ngôn ngữ tuyệt vời).

Trước khi bắt đầu, tôi muốn giới thiệu Josh Crews (http://joshcrews.com) và cảm ơn anh ấy vì đã thuyết phục tôi bắt đầu học Ruby on Rails; nếu không có anh ấy, sự giúp đỡ của anh ấy, và nếu không có anh ấy đã dành hàng giờ làm cố vấn cho tôi, tôi sẽ không viết được bài này ngày hôm nay. Cảm ơn.

Vào ngày 23 tháng 1, tôi đã đưa ra ý tưởng trong mơ của mình, Freelancify.com. Đúng 12 tuần trước, tôi là một doanh nhân công nghệ đã chi hàng nghìn đô la để tạo ra một MVP (sản phẩm khả thi tối thiểu) đàng hoàng vì tôi thiếu kiến ​​​​thức. Một trong những lý do (lúc đó tôi nghĩ) là việc đào tạo quá khó đối với tôi hoặc sẽ mất một thời gian quá dài. Tôi nghĩ (giống như nhiều người khác) rằng các lập trình viên (và một số) được sinh ra với một tập hợp các kỹ năng toán học và giải quyết vấn đề kỳ diệu khiến họ trở thành thiên tài lập trình. Và đúng 12 tuần trước tôi chấp nhận Quyết định tốt nhất trong một thời gian dài, thực sự trong một khoảng thời gian dài . Sẽ không còn bất kỳ ý tưởng nào của tôi chỉ là một ý tưởng nữa. Bây giờ tôi có cơ hội tung ra các phiên bản sản xuất, chỉ chi tiền cho việc lưu trữ và bỏ ra chút công sức. Ngày nay, bộ kỹ năng này giống như việc kéo một loạt máy kéo trong Cơn sốt vàng California trong khi những người khác chỉ sử dụng những chiếc xẻng đơn giản. Tôi đề nghị mọi người học cách viết mã. Ở đây tôi muốn nói rõ thêm: trước đó, tôi đã gọi bài đăng là “Tôi đã học Rails như thế nào trong 8 tuần”, tuy nhiên, nói chính xác thì tính đến ngày ra mắt thì hóa ra là 12 tuần. Tuy nhiên, trong vòng 8 tuần, tôi cảm thấy mình đã biết đủ và bốn tuần tiếp theo tôi dành nhiều thời gian hơn cho việc áp dụng kiến ​​thức thu được vào công việc hơn là học tập.

Tôi đã có những kỹ năng gì trước khi bắt đầu học Rails?

Tôi là một nhà thiết kế web có kiến ​​thức về HTML và CSS và chủ yếu tập trung vào thiết kế UI và UX. Điều khó nhất tôi đã làm với mã thực tế (không tính HTML) là có thể tùy chỉnh Wordpress. Nói tóm lại, tôi hoàn toàn không biết khung MVC là gì hoặc cơ sở dữ liệu nói chung hoạt động như thế nào. Thiết kế, bố cục và HTML cho Freelancify được tôi tạo ra trong hai tuần vào tháng 6 năm 2011.

Tại sao tôi quyết định học?

Quay trở lại tháng 6 năm 2011, khi bố cục đã sẵn sàng, tôi bắt đầu tìm kiếm một lập trình viên có thể làm cho bố cục hoạt động được. Bố cục gần như đã sẵn sàng: Tôi đã có Trường văn bản, menu thả xuống, biểu mẫu, nút, liên kết dẫn đến nơi cần thiết, v.v. Tôi đã tìm được một nhà phát triển, và tóm lại, anh chàng đó không phù hợp với tôi. Tôi mắc nợ rất nhiều và thậm chí không có sản phẩm nào sắp hoàn thành. Vì vậy, tôi đã liên hệ với Josh Krius (tôi gặp anh ấy tại buổi gặp mặt Ruby on Rails mà anh ấy tổ chức ở Nashville) và gặp anh ấy để xem liệu tôi có thể làm được điều gì đó từ những gì tôi đã để lại với tư cách là một nhà phát triển hay không. Thật không may, việc sửa và sửa đổi mã sẽ mất không ít thời gian hơn việc phát triển nó từ đầu bởi một lập trình viên có năng lực. Tôi trở nên chán nản khi nhận ra rằng mình không đủ khả năng chi hàng nghìn đô la để phát triển lại từ đầu. Và rồi Josh nói…” Tại sao bạn không học cách xử lý Ruby on Rails, dự án này sẽ là một cách tuyệt vời" và sau đó " Tôi thậm chí có thể gặp bạn hai lần một tuần và giúp bạn học tập" Tôi đã dành cả đêm để suy nghĩ về nó. Lựa chọn của tôi là: tìm công việc thoải mái và thanh toán hóa đơn HOẶC mạo hiểm mọi thứ để học Rails và cuối cùng thưởng thức món ramen ngon nhất mà Ý cung cấp. Tôi đã quyết định. Tôi gọi cho Josh vào sáng hôm sau. Tôi đặt tất cả mọi thứ. Tôi phân bổ tiền từ số tiền tiết kiệm còn lại và chia trong ba tháng (đối với một anh chàng độc thân sống một mình và không có con cái, một nghìn đô la mỗi tháng là đủ). Đã đến lúc đi làm, bây giờ tôi là người học việc toàn thời gian. Hãy nhớ rằng tìm kiếm của Google, Stackoverflow, IRC #RubyOnRails và cộng đồng Rails sẽ hỗ trợ tôi khi tôi gặp khó khăn, tôi chắc chắn rằng sẽ có rất nhiều người trong số họ.

Ba tháng tiếp theo của tôi - Mission: Đạt được MVP, đủ làm việc nhưng không đủ “tệ” để để lại ấn tượng ban đầu tệ hại.

Tuần 1 - 3

Đó có lẽ là chặng đường học tập lớn nhất, nhưng tôi KHÔNG bỏ cuộc.

Những bức tường được tạo ra cho những người không thực sự muốn rời xa chúng.

Thiết lập môi trường Rails hoạt động cho người mới hoàn thành có thể cực kỳ khó chịu. Mẹo số 1: Sử dụng máy Mac. Mẹo số 2: Sử dụng Homebrew, RVM, Git và Heroku (đó thực sự là tất cả những gì bạn cần để bắt đầu). Tôi đã dành vài ngày để cài đặt, sau đó gỡ cài đặt mọi thứ và cài đặt lại. Chỉ cần lặp lại một vài lần và bạn sẽ quen với việc sử dụng dòng lệnh terminal (console) và hiểu tại sao mọi thứ lại hoạt động như vậy. Sau đó, điều đầu tiên tôi làm là TryRuby, Rails for Zombies và Hướng dẫn về Rails của Michael Hartl. Đừng lo lắng về việc hiểu tài liệu 120%, điều đó sẽ không xảy ra cho đến khi bạn thực sự bắt đầu học. Tôi đã hoàn thành Hướng dẫn Rails và tạo nó tương tự như ứng dụng Twitter trong khoảng một tuần, tôi thực sự không hiểu mình đã làm gì. Sau này, khi tôi tiến bộ hơn, tôi bắt đầu nhận ra rằng mọi thứ đang bắt đầu có ý nghĩa.

Tuần 3 - 6

Với ứng dụng Twitter được xây dựng bằng Hướng dẫn Rails, tôi đã có được sự tự tin nhất định. Hướng dẫn này không giúp tôi trở thành nhà phát triển nhưng giờ đây tôi đã biết các bước chung trong việc tạo ứng dụng, từ việc tự tạo ứng dụng đến cài đặt ứng dụng trên Heroku. Mọi thứ xảy ra ở giữa vẫn mờ nhạt. Làm thế nào tôi THỰC SỰ có thể bắt đầu học bây giờ? Làm việc trên một dự án thực sự có ý nghĩa với tôi. Josh và tôi quyết định rằng tôi nên tự do làm việc trên Freelancify và xem mình có thể làm được gì. Điều đầu tiên tôi làm là di chuyển tất cả HTML khỏi khung và sắp xếp nó thành các dạng xem và các tệp một phần. Tôi đã tạo nền tảng mẫu có sẵn cho Người dùng và Dự án. Sau đó, tôi bắt đầu học viên ngọc thực sự đầu tiên của mình, Devise. Sau đó là khả năng có các mối quan hệ, ví dụ mỗi User sẽ có một portfolio. Nhưng Người dùng có thể có nhiều danh mục, trong khi mỗi danh mục chỉ có thể thuộc về một Người dùng. Một khi bạn hiểu mối quan hệ giữa các mô hình hoạt động như thế nào và cách gọi/hiển thị những thứ thuộc về thứ khác, cuộc sống sẽ trở nên dễ dàng hơn nhiều. Nếu bạn bị kẹt ở một phần nào đó và không thể di chuyển, hãy bỏ qua phần đó, rất có thể trong khi bạn đang phát triển một tính năng khác, bạn cũng sẽ tìm ra cách triển khai những gì bạn đã bỏ lỡ.

Tuần 6 - 9

Từng bước một, tôi tiếp tục học, sao chép và lặp lại. Tôi sẽ làm cho một số thứ hoạt động, và sau đó - bam - và tôi sẽ gặp phải một bức tường và hoàn toàn không biết phải làm gì tiếp theo. Cho dù truy cập Stackoverflow, trò chuyện IRC #RubyOnRails, RailsCasts hay lôi kéo Josh, cuối cùng tôi cũng đã tìm ra cách tiếp tục. Hãy làm đi làm lại cùng một việc và bạn sẽ nhanh chóng hiểu được nó. Việc dành hàng giờ khó chịu để kiểm tra câu trả lời của ai đó trên Stackoverflow chỉ để nhận ra rằng nó không hoạt động thực sự hữu ích. Bạn hiểu những gì không nên làm. Và khi bạn tìm thấy câu trả lời bạn sẽ bắt đầu hiểu TẠI SAO cái sau không hoạt động. Vào khoảng thời gian này, tôi bắt đầu nhận ra bức tranh toàn cảnh về mọi thứ rộng lớn đến mức nào và thực sự hiểu được TẠI SAO mọi thứ hoạt động chính xác theo cách nó hoạt động. Tôi cảm thấy mình như một thằng ngốc và quay lại và tái cấu trúc đoạn mã tôi đã viết trước đó để làm cho nó hiệu quả hơn. Và đến một lúc nào đó, tôi đã đạt đến giai đoạn mà mọi thứ bắt đầu đâu vào đấy.

Tuần 9 - 12

Tôi đang ở trạng thái năng lượng đáng kinh ngạc khi đưa Freelancify lên giai đoạn ra mắt. Ở giai đoạn này, tôi cảm thấy như thể mình đang bay, đưa các chức năng vào hoạt động. Tuần trước được dành để sửa nhiều lỗi và sai lầm ngớ ngẩn khác nhau. Thứ Hai tuần này tôi đã ra mắt trang web. Nhưng tôi vẫn còn lâu mới hoàn thành việc học của mình... Vậy thôi. Tôi đã lược bỏ (vì mục đích ngắn gọn của bài viết) những chi tiết nhỏ và điểm kỹ thuật. Tuy nhiên, vui lòng đặt câu hỏi trong phần bình luận, tôi chắc chắn sẽ cố gắng trả lời. James Fend.

tái bút - Mặc dù tôi có thể gặp một người cố vấn giúp ích rất nhiều nhưng bạn chắc chắn có thể học Rails mà không cần ai. Hoặc hãy thử tìm cho mình một người như vậy, nhiều nhà phát triển Rails thích đóng góp cho cộng đồng. Tìm kiếm các hội nghị và cuộc gặp gỡ địa phương.

Mục này đã hơn hai năm tuổi (được xuất bản vào ngày 27 tháng 1 năm 2012), tuy nhiên, nó vẫn không mất đi tính liên quan. Trong thời gian này, James Fend đã bán Freelancify và đầu tư vào một công ty khởi nghiệp mới, anh ấy đã để lại một ghi chú về điều này vào ngày 27 tháng 2 năm 2013. Tôi tin rằng bài viết này là một ví dụ tuyệt vời về cách một người có thể đạt được mục tiêu của mình. Tất cả những gì bạn phải làm là bắt đầu. :)