Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Ruby

เชี่ยวชาญ Ruby on Rails: คู่มือครบถ้วนสำหรับการเรียนรู้ Framework

หลาย major websites ที่คุณโต้ตอบ เช่น Hulu, GitHub และ Fiverr ถูกสร้างด้วย Ruby on Rails Ruby on Rails "a server-side" framework ที่เขียนใน Ruby programming language สามารถใช้ช่วย power web applications และเชื่อม front-end code ของคุณไปยังเว็บไซต์อย่าง Facebook และ Instagram ซึ่งจัดเก็บข้อมูลผู้ใช้ใน databases ของพวกเขา

Ruby on Rails ช่วยให้คุณทำได้เพราะ database จำเป็นสำหรับเว็บไซต์จัดเก็บข้อมูล Ruby on Rails เป็น framework ที่ใช้ process data จาก front-end ของเว็บไซต์ของคุณไปยัง database (the back-end)

Ruby on Rails คืออะไร?

Ruby on Rails หรือเรียกสั้นๆ ว่า Rails เป็น web framework สำหรับ Ruby Framework คือ collection of code libraries ที่คุณสามารถใช้สำหรับ common tasks โดยใช้ framework คุณสามารถประหยัดเวลาและโค้ด Rails ช่วยให้นักเขียนโปรแกรมทำซ้ำ task แทนที่จะเขียนโค้ดเดิมทุกครั้งสำหรับ common tasks อย่าง forms หรือ tables บนเว็บไซต์ของคุณ

Ruby เป็น object-oriented language หมายความว่า object-oriented programming ทำให้เขียนโค้ดที่น้อยซ้ำ (และสะอาดกว่า) ได้ง่ายขึ้น หากคุณใส่สิ่งต่างๆ ลงใน objects คุณสามารถทำ actions บน objects นั้นๆ ได้ นี่คือวิธีการทำงาน:

ใน procedural programming ซึ่งเป็นสิ่งที่ beginners ส่วนใหญ่เรียนรู้เริ่มต้น คุณมี bunch of functions แต่หากคุณทำการเปลี่ยนแปลงหนึ่ง function บางอันของ others อาจจะแตก ใน object-oriented programming "object" เป็นหน่วยของ variables และ functions ของพวกเขา (เรียกว่า properties และ methods)

ในสถานการณ์นี้ หากคุณทำการเปลี่ยนแปลง object หนึ่ง มันไม่ทำลาย objects อื่นๆ คุณยังไม่มี lines of code มากที่ต้อง fix: เนื่องจากทุกอย่างที่เกี่ยวข้องกับ unit ของ properties และ methods ที่กำหนดอยู่ภายใน object ของมันเอง คุณเพียงต้องทำการเปลี่ยนแปลงภายใน object นี้คือวิธีที่ object-oriented programming เป็นวิธีการ abstraction away unnecessary code

Frameworks เช่น Ruby on Rails มัก specific ถึง programming language ที่กำหนด ตัวอย่างเช่น Flask เป็น framework สำหรับ Python และ AngularJS เป็น JavaScript framework

Ruby เป็นภาษาที่สร้างสำหรับ programmer ไม่ใช่ machine มันตั้งใจจะ highly readable และง่ายสำหรับ beginners ใช้ การแสดงข้อความ "Hello World" ต้องการหลายบรรทัดของโค้ดในภาษาอย่าง Java และ C ในขณะที่ใน Ruby งานนี้ต้องการเพียงหนึ่งบรรทัดของโค้ด

Ruby on Rails ใช้ทำอะไร?

Ruby on Rails เป็น web framework ยอดนิยมที่สุดที่ใช้กับ Ruby ภาษาโปรแกรมมิ่ง จริงๆ แล้วภาษานี้ยอดนิยมจนถูกใช้หนักใน startup space ที่ time เป็น premium

บริษัทอย่าง Airbnb, Crunchbase, Bloomberg และ GitHub ทั้งหมดสร้างด้วย Ruby on Rails หมายความว่าพวกเขาจะน่าจะยังต้องการ developers ที่มี Ruby on Rails skills

Ruby on Rails อนุญาตให้คุณ:

เชื่อมข้อมูลของคุณไปยัง database อย่าง SQL หรือ MySQL หากคุณสร้างเว็บไซต์ที่จัดเก็บข้อมูลผู้ใช้ คุณจะต้องมีวิธีได้ข้อมูลนั้นเข้า database Ruby on Rails มี ORM (Object Relational Mapper) เรียกว่า ActiveRecord ORM นี้ map relationships จาก database ของคุณไปยัง Ruby objects โดยใช้ ActiveRecord คุณสามารถ create และ insert data ลง database ของคุณ เมื่อคุณมี elements ใน database แล้ว คุณสามารถ query (ส่งคำขอไป) database ได้

สร้าง web applications Ruby on Rails ทำงานบน backend ของ websites และ apps เพื่อ request และ fetch data จาก databases และ display data ที่มี HTML, CSS และ JavaScript content

ทำ prototype และทดสอบ ideas อย่างรวดเร็ว เพราะ Ruby และ web framework Ruby on Rails ใช้งานง่าย หากคุณมี idea สำหรับโปรเจกต์ คุณสามารถสร้างมันอย่างรวดเร็วและดูว่ามันทำงานได้หรือไม่ คุณไม่ต้องใช้เวลามากเกินไปในการรวม MVP (minimum viable product) เพื่อแค่ค้นพบว่ามันเป็น bad idea

การเรียนรู้ Ruby on Rails

Ruby on Rails เป็นทักษะที่มีค่าสำหรับเรียนรู้ หากคุณมองหาเริ่มอาชีพในเทค โดยเฉพาะหากคุณสนใจทำงานที่ startup เนื่องจากหลายแห่งสนใจจ้างคนที่มีประสบการณ์เขียน backend ของเว็บไซต์ บริษัทเหล่านี้ต้องการคนที่เข้าใจ databases ทำงานอย่างไร และส่ง data จาก frontend ไป backend อย่างไร

คุณควรเรียนรู้ Ruby on Rails อย่างไร? มา explore ทำไมคุณควรเรียนรู้ใช้ framework นี้และทรัพยากรบางอย่างสำหรับทำเช่นนั้น

ทำไมควรเรียน Ruby on Rails?

มีหลายเหตุผลที่คุณควรเรียน Ruby on Rails นี่คือเพียงบางอย่าง:

Ruby on Rails เรียนรู้ง่ายสำหรับ beginners แม้คุณจะไม่เคยใช้ programming language มาก่อน Ruby on Rails ยัง accessible พร้อมด้วย มี resources เยอะสำหรับ beginners และมี supportive online Ruby on Rails community

Ruby on Rails ประหยัดเวลา โดยใช้ web framework อย่าง Ruby on Rails คุณไม่ต้องเขียนโค้ดมากจากศูนย์ มันยังช่วยเก็บโค้ดของคุณให้สะอาดและป้องกัน bugs — คุณสามารถสร้างโปรเจกต์เร็วขึ้นและไม่ต้องใช้เวลามากเขียนโค้ด

Ruby on Rails ยอดนิยม มี jobs เยอะสำหรับ Ruby on Rails developers หลาย popular websites อย่าง Twitter สร้างด้วย Ruby on Rails Rails ใช้มากที่สุดสำหรับสร้าง full web applications และ APIs (Application Programming Interface) หากคุณอยากทำงานบน browser-based applications หรือ APIs Ruby on Rails เป็น framework ที่ดีที่จะเรียน

มันทั้งหมดขึ้นอยู่กับ use case ของคุณ Ruby และ Ruby on Rails ยอดเยี่ยมหากคุณอยากสร้างเว็บไซต์อย่างรวดเร็วหรือใช้ SaaS (Software as a Service)

แต่ หากคุณพยายามทำ web scraping หรือ machine learning Ruby และ Ruby on Rails ไม่ใช่ตัวเลือกที่ดีที่สุด เพราะ Python และ R เหมาะสมกว่าสำหรับ machine learning ตัวอย่างเช่น ก่อนที่คุณจะตัดสินใจใช้ technology tool คุณควรถามว่า "คุณจะใช้มันอย่างไร?" และ "มันจะช่วยประหยัดเวลาคุณได้ไหม?"

มีบริษัทที่สร้างเว็บไซต์ของพวกเขาใช้ Ruby และ Ruby on Rails ตอนที่เทคโนโลยีเหล่านี้ยังไม่ยอดนิยม ดังนั้นบริษัทเหล่านั้นยังต้องการ developers ที่รู้ว่า Ruby on Rails และ Ruby ทำงานอย่างไร

Programming languages อาจขึ้นและลงในความนิยม แต่ตราบใดที่บริษัทเคยใช้พวกเขา จะมี jobs สำหรับ developers ที่รู้วิธี update พวกเขาและเพิ่ม features ใหม่

ในขณะเขียน มี job results มากกว่า 6,000 ใน United States บน LinkedIn ที่ mention Ruby on Rails มากกว่า 2,000 บน Glassdoor และมากกว่า 2,000 บน Indeed จดไว้ว่าหลาย job postings นี้ยังต้องการความรู้เทคโนโลยีอื่นๆ ด้วย คุณในฐานะ prospective employee ในโลกเทค มีค่ามากกว่าหากคุณรู้ several technologies และวิธีทำให้พวกเขาทำงานร่วมกันเพื่อสร้าง product

ใช้เวลานานแค่ไหนในการเรียน Ruby on Rails?

การเรียน Ruby on Rails จะไม่ใช้เวลานาน หากคุณคุ้นเคยกับ Ruby แล้ว อาจใช้เวลาสองสัปดาห์ในการเรียน framework นี้ สมมติคุณเรียนวันละสองชั่วโมง

คุณสามารถสร้าง Ruby on Rails app แรกของคุณภายในหนึ่งเดือน แม้โดยไม่มี prior knowledge ใน Ruby ยิ่งคุณฝึก ยิ่งคุณจะเก่งในทักษะนี้

ยากไหมที่จะเรียน Ruby on Rails?

มันไม่ยากที่จะเรียน Ruby และ Ruby on Rails ตราบใดที่คุณยินดีใช้เวลาเรียนรู้พวกเขา Ruby มี logic คล้าย Python ดังนั้น หากคุณคุ้นเคยกับ Python learning curve ของคุณกับ Ruby จะชันน้อยลง และหากคุณคุ้นเคยกับการใช้ web framework อย่าง Python's framework Flask เพื่อสร้างเว็บไซต์ แนวคิดการ configure Ruby on Rails จะไม่ยากสำหรับคุณที่จะเข้าใจ

เชี่ยวชาญ Ruby on Rails: คู่มือครบถ้วนสำหรับการเรียนรู้ Framework

"Career Karma เข้ามาในชีวิตฉันเมื่อฉันต้องการมันมากที่สุด และช่วยจับคู่ฉันกับ bootcamp ได้อย่างรวดเร็ว สองเดือนหลังจบ ฉันพบงานฝันที่สอดคล้องกับค่านิยมและเป้าหมายในชีวิต!"

Venus, Software Engineer at Rockbot

Find Your Bootcamp Match

คุณมี online และ offline resources มากมายที่นิ้วมือของคุณช่วยคุณเรียน Ruby on Rails และเริ่มสร้างโปรเจกต์ ทรัพยากรเหล่านี้รวมถึงหนังสือและ online tutorials

วิธีเรียน Ruby on Rails: ขั้นตอนละขั้นตอน

ไม่มี "best way" เดียวในการเรียนรู้ใช้ Ruby on Rails มันขึ้นอยู่กับวิธีคุณเรียนและเป้าหมายของคุณ บาง learners ชอบดู video tutorials, หาคอร์ส อ่านหนังสือ และอ่าน documentation ก่อนที่จะลองสร้างอะไร บางคนชอบแค่เรียน basics ผ่าน tutorials หรือคอร์สไม่กี่อัน ก่อนกระโดดเข้าไปและเรียนส่วนที่เหลือขณะไป

นี่คือขั้นตอนที่คุณควรทำเพื่อเรียน Ruby on Rails

  1. ตัดสินใจว่าทำไมคุณอยากเรียน Ruby on Rails ทำไมคุณถึงอยากเรียนรู้ใช้ framework นี้? คุณสนใจเป็น full-stack developer และอยากแค่มี tool อีกอันในมือ? การกำหนดทำไมคุณอยากเรียน Ruby on Rails จะช่วยให้คุณ focus บนเป้าหมายของคุณ
  2. เรียน Ruby เรียน Ruby ก่อนเพราะ Ruby on Rails เป็น Ruby web framework
  3. ดู tutorials หรืออ่านหนังสือ เป็นไอเดียที่ดีที่จะเรียนรู้วิธี configure Ruby on Rails และติดตั้งมันบนเครื่องของคุณก่อนเริ่มโปรเจกต์ คุณต้องเข้าใจวิธีใช้ version control tool อย่าง Git เพื่อติดตั้ง Ruby on Rails ดังนั้น หากคุณไม่แน่ใจว่ามันคืออะไร ให้เรียนพื้นฐานบางอย่างเกี่ยวกับ Git และมัน interact กับ code editor ของเครื่องของคุณอย่างไร
  4. สร้างโปรเจกต์ เมื่อคุณมี familiarity บางอย่างกับ Ruby และติดตั้งมันบนเครื่องแล้ว เริ่มสร้างโปรเจกต์ Practice เป็นวิธีที่ดีที่สุดในการดูดซับทักษะใหม่ของคุณ
  5. เข้าร่วม online communities คุยกับคนอื่นที่ใช้ Ruby บน communities อย่าง StackOverflow เพราะเว็บไซต์เหล่านี้ช่วยให้คุณถามคำถามและแชร์สิ่งที่คุณกำลังเรียนรู้

The Best Ruby on Rails Courses (คอร์ส Ruby on Rails ที่ดีที่สุด)

Git, GitHub และ Heroku skills ก็ช่วยได้เช่นกัน เพราะคุณจะพัฒนา SaaS application และเรียนรู้วิธี test และ deploy application นี้

Udemy: Ruby on Rails Foundations
Cost: $19.99

คุณจะได้ 6.5 ชั่วโมงของ video content และ certificate of completion ในคอร์สนี้ ที่นี่ คุณจะเรียนรู้วิธีสร้าง fully functional Ruby on Rails application ทำงานกับ APIs (Application Programming Interface) วิธีใช้ RESTful routes และอื่นๆ

APIs อนุญาตให้ different apps และ services อธิบายข้อมูล ตัวอย่างเช่น คุณสามารถมี weather API บนเว็บไซต์ของคุณที่ใช้ข้อมูลจาก The Weather Channel เพื่อแชร์ข้อมูลสภาพอากับผู้เยี่ยมชมไซต์ของคุณ RESTful (REST ย่อมาจาก "Representational State Transfer") routes อ้างถึง patterns ใน interactions ระหว่าง "client" (อย่างคอมพิวเตอร์หรืออุปกรณ์อื่น) และ server

คอร์สนี้ยังแนะนำขั้นตอนการติดตั้ง และเป็นตัวเลือกที่มีค่าสำหรับการศึกษาต่อใน Ruby on Rails

Codecademy: Ruby on Rails
Cost: Codecademy subscription ($19.99/month)

ในคอร์สนี้ คุณจะสร้าง eight complete web applications ด้วย Ruby on Rails คุณจะเรียนรู้เกี่ยวกับ MVC (Model View Controller) design pattern และวิธี communicate กับ databases คอร์สนี้สมมติว่าคุณรู้ Ruby ดังนั้น ให้แน่ใจว่าเรียน programming language นั้นก่อนสมัคร Rails course นี้

edX: Agile Development Using Ruby on Rails – The Basics
Cost: Free (Certificate is $99)

Intermediate 6-week (10–12 hours/week) course นี้ต้องการ proficiency ใน object-oriented programming language อย่าง Java, C#, C++, Python หรือ Ruby คอร์สจะ quick review basics ของ Ruby ดังนั้น คุณควรมา prepared พร้อมกับ basic knowledge อย่างน้อย

edX: Agile Development Using Ruby on Rails – Advanced
Cost: Free (Certificate is $99)

ในคอร์สนี้ คุณจะขยายความรู้ที่คุณได้ในคอร์ส "Basics" คุณจะใช้ JavaScript เพื่อ boost web applications ของคุณ และเพิ่ม relationships ระหว่าง models ภายใน Ruby on Rails framework คอร์สนี้ยังครอบคลุม topics อย่าง deployment, performance monitoring, debugging และ data protection คอร์สนี้ยาว 25 weeks (สมมติคุณใส่ 10–12 hours ต่อสัปดาห์)

Ruby on Rails Books (หนังสือ Ruby on Rails)

Ruby on Rails for Dummies by Barry Burd

เชี่ยวชาญ Ruby on Rails: คู่มือครบถ้วนสำหรับการเรียนรู้ Framework

Image credit: Amazon

หนังสือเล่มนี้สอนคุณวิธีสร้าง fully-functional web applications ด้วย Ruby และ Ruby on Rails มันแนะนำคุณผ่านวิธีติดตั้งและรัน Ruby on Rails และวิธีใช้ RadRails IDE

Ruby on Rails: Up and Running by Bruce A. Tate and Curt Hibbs

เชี่ยวชาญ Ruby on Rails: คู่มือครบถ้วนสำหรับการเรียนรู้ Framework

Image credit: Amazon

หนังสือเล่มนี้สอนคุณวิธีติดตั้งและใช้ Ruby และ Ruby on Rails มันยังสอนเกี่ยวกับวิธีใช้ Ajax และ REST สำหรับ functionality เพิ่มเติม หนังสือยังอธิบายวิธีใช้ logging เพื่อหาปัญหา เนื่องจาก performance optimizing เป็นส่วนสำคัญของ web development

Ruby on Rails Tutorial by Michael Hartl

เชี่ยวชาญ Ruby on Rails: คู่มือครบถ้วนสำหรับการเรียนรู้ Framework

Image credit: Learn Enough

ผู้แต่ง Michael Hartl จะแนะนำคุณผ่านการพัฒนา web application ของคุณเองโดยใช้ Ruby on Rails หนังสือเล่มนี้ยังจะสอนคุณเกี่ยวกับ automated testing, authentication และ techniques สำหรับแก้ real-world problems คุณจะเรียนรู้เกี่ยวกับ tools อย่าง Ajax, Git, GitHub และ Heroku

Ruby on Rails Resources (ทรัพยากร Ruby on Rails)

นอกจากหนังสือและคอร์สที่มีอยู่ มี online resources อื่นๆ ที่คุณสามารถใช้ช่วยบน Ruby on Rails journey ของคุณ

Ruby on Rails Guides

เชี่ยวชาญ Ruby on Rails: คู่มือครบถ้วนสำหรับการเรียนรู้ Framework

Image credit: Ruby on Rails Guides

หนึ่งในทรัพยากรที่ดีที่สุดสำหรับเรียน Ruby on Rails คือ collection of guides นี้ guides เหล่านี้รวมทุกอย่างจาก "Getting Started with Rails" และ "Layout and Rendering in Rails" ถึง "Debugging Rails Applications" และไปเรื่อยๆ

Ruby on Rails Documentation

เชี่ยวชาญ Ruby on Rails: คู่มือครบถ้วนสำหรับการเรียนรู้ Framework

Image credit: Ruby on Rails documentation

DevDocs.io hosts Ruby on Rails documentation ที่คุณสามารถคลิกบน topics หลากหลายเพื่อเรียนรู้เพิ่มเติมเกี่ยวกับพวกเขา

The Ruby on Rails Community

เชี่ยวชาญ Ruby on Rails: คู่มือครบถ้วนสำหรับการเรียนรู้ Framework

Image credit: Ruby on Rails Community page

โต้ตอบกับคนอื่นออนไลน์ผ่าน Ruby on Rails community page ดูหน้านี้สำหรับข้อมูล discussions, StackOverflow Q&A tag, annual conference และอื่นๆ

สรุป

หากคุณสนใจสร้าง web applications ที่มี databases Ruby on Rails เป็น tool ที่ยอดเยี่ยมที่จะเรียน Ruby on Rails เป็น web framework ที่ช่วยให้คุณส่ง data จาก frontend ไป database ของคุณได้อย่างง่ายดาย

Ruby on Rails สำคัญที่จะเรียน หากคุณอยากพัฒนา web applications สำหรับ startups เพราะบริษัทต้องทำ tasks ให้เสร็จเร็ว ไม่ว่าคุณจะอยากทำงานให้ startup หรือ tech company ที่มั่นคงแล้ว มี demand สำหรับ Ruby on Rails developers

คุณพร้อมที่จะเพิ่ม Ruby framework นี้เข้าไปในรายการทักษะของคุณไหม? เริ่มเรียนวันนี้!