Skip to content

iachievedream/ruby-resources

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

40 Commits
 
 
 
 

Repository files navigation

Ruby 學習資源

本文列出 Ruby 相關的學習資源,以供有心學習 Ruby 的同好們參考。

Ruby 程式設計

  • https://www.ruby-lang.org/:官方網站,有一些文件可看
  • Ruby Doc:查 Ruby API 用 [連結]
  • Ruby User's Guide:快速學習 Ruby 的語法,原版是由 Ruby 之父松本行弘以日文撰寫 [英譯] [中譯]
  • 深入淺出 Ruby:用大量圖示、輕鬆風格的 Ruby 入門書  [中文]  [原文]
  • Beginning Ruby, 3rd edition:簡明的 Ruby 入門書 [連結]
  • Learn to Program:新手導向的入門書 [連結]
  • Learn Ruby the Hard Way:含許多練習的入門書 [連結] [中譯]
  • The Well-Grounded Rubyist, 2nd edition:著重觀念的 Ruby 程式設計書籍 [連結]
  • TutorialsPoint 的 Ruby 教程 [連結]
  • Programming Ruby:具指標性的 Ruby 教材,Ruby 版本略舊 [連結] [舊版]
  • Ruby Under a Microscope:講解 Ruby 內部實作的書籍,非一般 Ruby 入門教材 [連結]

撰碼風格

撰碼風格 (coding style) 是一個參考性的項目,不是硬性的規定。最重要的是在同一份專案內保持一致,再來就是在同公司或團體內保持一致,能和 Ruby 社群也保持一致就更好了。

  • Ruby Community Coding Style  [原文]  [中譯]
  • RoboCop:參考上述撰碼風格的 Ruby 靜態程式碼檢查工具

開發方法論

  • Practical Object-Oriented Design in Ruby: An Agile Primer:以 Ruby 為例,講解物件導向程式設計的書 [連結] [中譯]
  • Effective Ruby:一些 Ruby 的實務和經驗 [連結] [中譯]
  • Test Driven Development in ruby: 以測試導向開發為主軸,講解 Ruby 程式設計 [連結]
  • Effective Testing with Rspec 3: 以 Rspec 撰寫測試程式,對開發過程有所幫助  [連結]

線上學習網站

  • Codecademy:免費線上練習程式設計的網站,可付費升級以取得部分獨特內容 [連結]
  • RubyMonk:免費線上互動式 Ruby 學習網站 [連結]
  • Ruby Koans:下載學習 Ruby 程式設計 [連結]
  • SoloLearn:免費線上互動式程式設計學習網站,有多種語言,包括 Ruby 在內 [連結]
  • Code School:線上練習程式設計的網站,包括 HTML, CSS, JavaScript, Ruby, Python 等課程,大部分課程需付費 [連結]
  • LauchSchool (原 Tealeaf):紮實的線上課程,費用較高,有真人導師協助學習 [連結]

解題網站

熟悉 Ruby 語法後,可以到下列網站練功。有些題目有相當難度,做不出來也不用太灰心。

Web 開發

建議想學習 web 開發的初學者,先將 HTTP 的基礎概念看完一次,但不需強記那些協定的細節。然後,可以依照前端 (frontend) 和後端 (backend) 分頭學習,以 Ruby 社群來說,初學者可以先透過 Sinatra 來學習 web 開發,在學到 web form 和 ajax 時,就會用到後端,另外,資料庫也需要透過後端程式和前端連結。對於有經驗的開發者,則可直接學習 Ruby on Rails。

前端

  • HTML:靜態的網頁內容
  • CSS:靜態的網頁形式
  • JavaScript:動態的網頁動作。對於初學者來說,先學基本的 JavaScript 語法和 jQuery。以後再視需要學習前端框架。

後端

傳統上來說,後端是由 Perl、PHP、ASP、JSP 等語言負責,但後端不限於某種特定的語言。以 Ruby 社群來說,可由下列框架入門:

  • Ruby on Rails:Ruby 社群最知名的 MVC 框架
  • Sinatra:一個微框架 (micro-framework),非 MVC 框架

或是這些新的框架:

  • Hanami:現代化的 MVC 框架
  • Padrino:基於 Sinatra 的 MVC 框架

資料端

資料庫有相當多的實作品,以 web application 來說,可先從以下兩種資料庫擇一學習:

  • MySQL/MariaDB
  • PostgreSQL

Ruby on Rails

Ruby 中最知名的 web framework。但 Rails 較適合已有一些網頁程式開發經驗,想要快速開發新產品的開發者。

Rails 5

  • Rails Guide:官方文件,略為學過 Rails 後再看,比較容易上手 [連結]
  • 為你自己學 Ruby on Rails:國內 Rails 前輩高見龍先生所著的 Rails 書籍 [紙本][線上]
  • The Rails 5 Way:詳細敘述 Rails 的特性,適合學過一段 Rails 後再看  [連結]
  • Ruby on Rails Tutorial:國外知名的 Rails 入門教程 [連結]
  • Agile Web Development with Rails 5:DHH 參與編寫的 Rails 教程 [連結]
  • Learning Rails 5 [連結]

Rails 4

  • Rails, Angular, Postgres, and Bootstrap:綜合性書籍,建議有一些網頁程式的經驗再看 [連結]
  • RailsBridge Docs:簡易的 Rails 教程,可以按部就班學習 [連結]
  • Rails Girls 指南:可跟著練習的教程 [連結]
  • Ruby on Rails 實戰聖經:國內有名的 Rails 參考書 [連結]
  • Rails 101:目前改為免費線上課程 [連結]
  • Rails 102:一些較進階的 Rails 相關知識 [連結]
  • The Rails Way:將 Rails 詳細講一次的大部頭書籍,適合學過一陣子 Rails 後再看 [連結]

Sinatra

一個微框架,可用來快速建立網頁應用程式。對於不熟悉 web 開發的程式設計師而言,先學 Sinatra 比較容易上手。但 Sinatra 較不適合用來建立大型網站。

  • Sinatra 官網,有一些文件可看 [連結]
  • Sinatra Up and Running:第一本 Sinatra 的實體書籍 [連結]
  • Jump Start Sinatra:電子和實體書籍 [連結]

Git

最流行的分散式版本管理系統,Linux 之父 Linus Torvalds 的作品。

  • 為你自己學 Git:國內 Rails 前輩高見龍先生所著的 Git 書籍 [紙本][線上]
  • Pro Git:免費電子書,也有實體書籍 [連結]

建議到 GitHub 註冊帳號,以存放程式碼,帳號本身為免費,如果需要私有 repo 時可付費。也可到 Bitbucket 註冊帳號,存放私有 repo 不需收費。

適用 Rails、Sinatra 和其他 Ruby 網站的雲端主機方案

PaaS 的好處是不需管理主機,但收費會略高

註:OpenShift 上 Ruby 及其他相關套件的版本較舊,可能會在部署時發生問題,請小心服用。

VPS 的好處是收費相對較低,但需自行管理站台

Mobile apps

透過 RubyMotion 可將 Ruby 程式碼轉為原生的 iOS、Mac OS 及 Android 平台的應用程式。這是一套商業軟體,基本功能免費,進階功能需付費,請需要的朋友自行參考。要注意的是,RubyMotion 不能直接沿用 Ruby 原生的 gem,需重新撰寫適用於 RubyMotion 的插件 (plugins)。

綜合性應用

  • Ruby Cookbook, 2nd edition:綜合性 Ruby 技巧及應用 [連結]
  • The Ruby Way: 綜合性 Ruby 技巧及應用 [連結]
  • The Ruby Toolbox: 列出各種情境可用的 gems,有一些指標像是開發活躍度、下載次數等可參考
  • Awesome Ruby: 列出許多 Ruby 函式庫和框架,可供開發者參考
  • Awesome Ruby (from LibHunt);另一個整理過的 Awesome Ruby 站台
  • Text Processing with Ruby:利用 Ruby 進行文字處理相關任務 [連結]
  • Ruby Performance Optimization:各種加速 Ruby 程式的技巧 [連結]
  • Build Awesome Command-Line Applications in Ruby 2:用 Ruby 撰寫終端機程式 [連結]
  • Ruby Quicktips:一些簡短而實用的 Ruby 程式碼

遊戲

什麼?Ruby 可以用來做遊戲?用 Gosu 就可以做出一個 2D 遊戲了。

  • Learn Game Programming with Ruby:實體和電子書籍 [連結]
  • Developing Games with Ruby:電子書,可免費線上觀看及付費下載 [連結]

以下是另一本有趣的 Ruby 書:

  • Mazes for Programmers:用 Ruby 製作迷宮 [連結]

電子報

個人網站

一些 Ruby/Rails 前輩的網站,按網路代名的字母排序。

社群

研討會

以東亞的研討會為主。

如果有機會出國,可以參考 Ruby Conferences 網站,有全世界的 Ruby 相關研究會短訊。

商業課程

小弟和下列團體沒對價關係,各位網友可放心。 有些網友比較喜歡上課,故放在此處,請各位自行參考。

  • 五倍紅寶石:提供 Ruby、Rails、iOS 等課程
  • ALPHAcamp:提供 Rails、iOS 和行銷等課程,以創業為目標,需面試
  • GrowthSchool:提供 Rails、敏捷開發、Growth Hack 等課程
  • 飛鳥學院:提供網頁前端、PHP、Rails、iOS 等課程

About

Ruby 學習資源

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published