Learn Ruby The Hard Way

笨方法學 Ruby

《 笨方法學 Ruby 》(Learn Ruby The Hard Way)是 Zed Shaw 編寫的一本Ruby 入門書籍。適合對電腦了解不多,沒有學過寫程式,但對寫程式感興趣的朋友學習使用。這本書以習題的方式引導讀者一步一步學習寫程式,從簡單的打印一直講到完整專案的實現。也許讀完這本書並不意味著你已經學會了寫程式,但至少你會對程式語言以及開發程式這個行業有一個初步的了解。

筆者認為本書區別於其它入門書籍的特點如下:

  • 注重實踐。本書提供了足夠的練習代碼,如果你完成了所有的練習(包括加分習題),那你已經寫了上萬行的代碼。要知道很多職業程式設計師一年也就寫幾萬行程式碼而已。
  • 注重能力培養。除了原序言提到的「讀和寫」、「注重細節」、以及「發現不同」這樣的基本能力以外,本書還培養了讀者自己鑽研問題和尋求答案的能力。
  • 注重好習慣的養成。本書詳細地講解了怎樣寫出好的代碼、好的註釋、好的項目。這會讓你在後續的學習中少走很多彎路。

本書結構非常簡單,其實就是52 個習題而已。其中26 個覆蓋了輸入輸出、變量、以及函式三個課題,另外 26 個覆蓋了一些比較進階的話題,如條件判斷、迴圈、類和物件、程式碼測試、以及專案的實現等。每一章節的格式基本都是一樣的,以程式碼練習題開始,讀者照著說明編寫程式碼(不允許複製貼上),運行並檢查結果,然後再做一下加分習題就可以了。當然如果你覺得加分習題對你來說有點難,你也可以暫時跳過,以後再完成也沒關係。

另外閱讀本書還需要你有一定的英文能力。其實學習寫程式不懂英語是很吃虧的,畢竟編程語言都是基於英語,而程式社群的主要交流方式也是英語。不會英語的人在程式界可能就只好當二等公民了。本書的翻譯盡量保留了所有的英文專業詞彙(可能會有中文說明),而且遵照 Zed 的建議,程式碼及答案部分沒有翻譯成中文,讀者看到不懂的地方,請自己查字典解決。

如果你對自己的英文能力比較有信心,譯者強烈推薦你直接去下載閱讀英文原版。這本書代碼較多,文字內容較少,因此英文原版的閱讀理解也比較容易。

LRTHW的風格和別的書差異很大。它沒有像一般的入門書籍一樣通過討好讀者以激發讀者興趣,而是直截了當地告訴你你需要做什麼,需要注意什麼。這種風格可能會讓人覺得枯燥乏味,讀者姑且把這也當做 Hard Way 的一部分吧。

LPTHW 簡體中文版的翻譯者是 wangdingwei82@gmail.com,而他的 blog 是 http://ducktypist.com/

LRTHW 中文版是 xdite 基於 LPTHW 中文版的翻譯成果,改編成 Ruby 版,並修正當中繁簡以及不同程式( Python / Ruby )環境所造成的差異改譯而成。

如果你對 LRTHW 的翻譯有任何意見和建議,請在這個 project 的 Github issue 頁發 issue 給我,或者是直接 pull request 也行。

你也可以上 LRTHW 官網 購買本書正版,這也是對 Zed Shaw 的支持。