學習 JavaScript

科技博客 Derek Sivers 分享他學習 JavaScript 的經過,他強調目標是真正掌握 JavaScript 這個語言,不想抄捷徑、不要快速招數,我們來看看他的經驗。

很多 Derek 的朋友都向他推薦 Douglas Crockford 寫的《JavaScript: The Good Parts》,但是 Derek 認為它太密集,太簡潔,他根本不明白這本書在說甚麼。很多專家解釋他們擅長的東西時,都不懂得為了聽眾的程度而做適度的簡化,Derek 認為這本書十分適合那些已經有 20 年 C、C++、和 Java 編程經驗的人,他們需要的只是對 JavaScript 簡要的概述,這本書並不是「教」你 JavaScript,甚至沒有給你任何指導,Derek 不建議看這本書。

相反,Derek 推薦 Marjin Haverbeke 寫的《Eloquent JavaScript》,這本書開始那麼容易,甚至可說太容易,大大鼓舞了新手的信心,讀了一會兒你可能會大喊:「JavaScript 很容易啊!」這本書有一個線上版本,建議你去讀一下,因為所有範例和練習都可以即時在瀏覽器測試。

讀了幾章節後,便可以轉到 Nicholas Zakas 寫的《Professional JavaScript for Web Developers, 3rd Edition》,它可說是 JavaScript 教科書的完全終極版,它幾乎涵蓋所有細節,而且解釋得很徹底,只要每一章節花幾小時研習,讀完這本書後,你便盡得大多數自稱 JavaScript 程序員所知道的一切。

Derek 發覺若果這時重讀《JavaScript: The Good Parts》,一切便容易明白的多,但是《Professional JavaScript for Web Developers》是如此完美,它已經涵蓋《JavaScript: The Good Parts》所有內容了。

當然,你要把學到的知識融會貫通,所以 Derek 建議把每一項新知識寫下來,最好是用一些如 Anki 等的「閃卡」(flashcard) 軟件,以便你在跟著的幾週和幾個月隨時重溫你學過的東西。

如果你還想多看一些 JavaScript 書來鞏固你的知識,Derek 有以下的推薦:

這些都是好書,隨著你對 JavaScript 愈來愈熟悉,看書便愈來愈快,但是別忘記跟著書中的範例做練習。

閱讀一些現實世界中的 JavaScript 程式碼

閱讀過上千頁的小型範例和程式碼片段後,你一定會喜歡看兩個非常流行和強大的 JavaScript 專案程式碼:

  1. Underscore.js
  2. Backbone.js

你會發現所學的一切變得那麼有意義,現在,你才算有能力流暢地閱讀和理解 JavaScript。

下一步:jQuery,還有更多…

jQuery 絕對是無處不在的,所以你必須把它學好,你的 JavaScript 課程才算完滿。

你已經學會了使用冗長而囉嗦的 JavaScript 語句來寫程式,所以一定會對 jQuery 提供的快捷方式感動。Derek 很喜歡《Head First jQuery》這本書,認為它十分適合初學者,它引導讀者一步一步學習 jQuery,一面學習一面應用,不知不覺間你便掌握了 jQuery。

如果你仍然渴望學習更多 JavaScript,可以看看以下的 JavaScript 專案:

然後放下書,動手寫程式吧!

Derek 說這一點其實誰都知道,但是如果不說出來就會有人抱怨。 現在研究一下你自己的網站,把學到的功夫耍出來。也可以從頭開始,單獨使用 JavaScript 來建立一個新網站,儘管只是一個實驗,這些功夫是值得花的。

你的 JavaScript 學習過程又是怎樣的呢?歡迎在留言中跟我們分享一下。