JavaScript高手的資源裝備

kmokidd發表於2015-01-07

去年我寫了篇文章,推薦一些JavaScript進階學習的資源。網際網路世界在這一年時間裡發生了翻天覆地的變化,我想現在是個更新資料的好時機。JavaScript在過去的一年不斷髮展,不僅僅是瀏覽器中JS的應用,在伺服器端也有了JS的身影。所以現在讓我們來更新一下這份資源清單吧。

書籍

隨著JS的普及,大家能獲取到的JS書籍實在太多了,但是在我看來只有很少一部分JS書籍可以提供夠新夠有意思的內容。以下是我看過之後,覺得很值得推薦給大家的:

JavaScript高階程式設計 作者: Nicholas Zakas

除了Nicolas寫的這本之外,我從未見過另一本能將JavaScript這門語言陳述地如此好,所以《JavaScript高階程式設計》依然在必讀清單上。正如我之前說過的,不管是初學者還是就想查查API的開發者,都可以從這本書中找到所需要的東西。這一版尚未將ES6的內容包含進來,不過我覺得下一版估計會寫到了。

JavaScript設計模式 作者:Addy Osmani

使用好的設計模式來編寫可維護性高的程式碼是無可爭議的。但是找到一個可以實操設計模式的場景卻是一個挑戰。網際網路世界裡噪音太多,如果能讓對某個領域真正有所瞭解的人能夠發表他對那個領域的看法那就太好了。這也是我推薦這本書的原因。Addy不僅僅是一位很優秀的作家,他還是最出色的前端開發者之一,現在任職於Google Chrome團隊,他的工作內容就是成天和JS打交道。這本書可以說是他的工作成果的匯出。

最棒的一點是,這本書是執有知識共享許可(Creative Commons license)的,也就是說你既可以閱讀它的免費電子版,也可以購買紙質版。

JavaScript物件導向程式設計原理 作者:Nicholas Zakas

JS開發者無法避免的問題之一就是JS物件導向程式設計。JS並不是一個傳統的基於類(class)的語言,不像Java或者C#那樣在設計之初就要兼顧到程式碼封裝的問題。Nicholas又一次寫了本簡明扼要的書來談JS的物件導向問題。不過這本書並不適合初學者,它是為了對JS有了自己理解的開發者或者/和對物件導向程式設計有所思考開發者。儘管如此,這本書還是應該加入你的書單裡。

DOM Enlightenment 作者:Cody Lindley

在基於瀏覽器開發中,如果你想要做點有用的事情,就不要侷限在操作DOM中。不要使用像jQuery這樣操作DOM的庫,實際去理解DOM是如何工作的是很有用的。Cody這本書就是教授如何使用原生的JS來操作DOM元素。這本書可以算是一本cookbook,你不需要跟著目錄學習,可以直接看特定的章節。這本書也提供了免費線上版,或者你也可以買一本紙質本。

Node.js In Action 多名作者

基於Node.js的服務端應用已經在業內的頂尖公司得以廣泛應用,PayPal已經將Node.js完全融入了他們的生產系統之中。這項在兩年前的JSConf上初露端倪的技術,現在已經發展成為一項服務端技術,使得前後端語言得以統一。通過閱讀這本書,你的Node.js水平可以得以提高,本書是由業界最出色的一些開發者共同完成編寫的。其中一位作者T.J.Holowaychuk是Node.js框架Express的作者。如果你想要學習Node.js,就用這本書吧。

Third-Party JavaScript 作者:Ben Vinegar和Anton Kovalyov

現在我們訪問的網站通常都會有一些內嵌的指令碼,這些指令碼可以提供給使用者各式各樣的互動。登入按鈕、社交媒體部件或者一些分析,這些第三方指令碼可以增加你的站點的吸引力。你是否想要知道使用這些指令碼的細節呢?《Third-party JavaScript》是我所能找到的唯一一本講到了關於內嵌指令碼的使用的書。用第三方指令碼讓你的站點變得有趣,提高可用性。Ben現在在Disqus工作,Anton則是在Mozilla但是他同時也是Disqus團隊的一員。Disqus為他們的客戶提供了非常相似的服務,允許客戶將多功能的評論功能內嵌入他們的站點中。這兩位可以說是使用第三方JavaScript的專家。

部落格

在過去的一年裡,我仔細審查了自己的blog收藏清單,做了一些調整以便更好的接收JS方面的知識。以下是我認為可以提供給開發者最好的JS知識的部落格:

2ality

Axel Rauschmayer博士希望能將JS語言分成好理解的模組,他的博文很明顯地是在討論這門語言的某些使用方式,解釋JS的原理和它的要點。你能從他的博文中學到很多。

DailyJS

DailyJS依然榜上有名,它將框架和程式碼片段相結合,讓讀者知道時下最新的框架是什麼,以及如何使用它們。

Nicholas Zakas

上文有提到Nicholas寫的兩本書,他的部落格同樣在榜。在Nicholas的部落格中你可以看到他深入研究的東西,也能看到他關於ES6的簡介和demo。

JavaScript Weekly

新興事物來來去去,我很高興還能推薦JS Weekly給各位。Peter Cooper不僅保持著每週推送,質量也一如既往地好。

(譯註:JS 英文週刊,伯樂頭條 JavaScript 話題一直在跟進摘編。)

Node Weekly

這是Peter Cooper的另一個週報專案,這個專案專注於Node.js。和JavaScript Weekly相似,閱讀Node Weekly,做一個Node.js高手。

Addy Osmani

雖然Addy現在不再頻繁地更新他的部落格了,但是他寫的文章非常之好以至於我依然決定將他的部落格列入這份清單裡。只要Addy保持寫作,你一定不會失望的。

Ben Nadel

Ben是一個低調的開發者,他只想要做好他的工作,將他的經驗分享給大家。關鍵在於他也是一個天才的開發者,寫了許多關於JavaScript的優秀博文。Ben最近沉迷於AngularJS,他也將這個框架最大限度地使用在他的創業專案中,讀者可以從他的博文中知道AngularJS在實際專案中的應用情況。

HTML5Rocks

別被這個名字給騙了,HTML5Rocks裡說的不僅僅是HTML5,你還能在上面找到很多JavaScript的教程。你需要通過JavaScript最大限度地與HTML5結合,在上面你可以看到許多優秀的作者寫的文章(包括Google Chrome 團隊)。

SuperheroJS

一開啟SuperheroJS,你就會被它的藝術感給震懾到。我總會想起Dick Tracy的漫畫書。在這,你會沉浸在各種各樣的JS技術當中。

Tuts+

我對Tuts+還是有偏愛的,Tuts上有許多超棒的作者貢獻出超棒的內容。如果你不讀一讀Tuts+上的內容,恐怕不會感受到的。

書本之外

如果書和部落格尚不能滿足你的需求,你也想要寫寫程式碼,那現在有成千上萬的(線上線下)課程可以選擇:

Tuts+ Courses

構建JavaScript Web應用熟練使用Angular,從前端到全棧,Tuts+的課程日益增多,相信總有一款滿足你。

Khan Academy’s Computer Programming Curriculum

jQuery的作者John Resig在可汗學院(Khan Academy)擔任電腦科學專業的院長,可以確定他的教課計劃中會有很多的JS內容。雖然現在課程還不是很多,但你還是可以從免費課程開始。

Codecademy

自從Codecademy採用了互動式的教學模式,並採用JS作為基礎教學語言,它簡直就是來了個大爆發。現在你可以在上面學到更多的語言,但是JS和jQuery依然是最推薦學習的,它們免費!

Nodeschool.io

這是個社群驅動的網站,你可以通過Nodeschool上的課程加快學習Node的速度。它還有一個特色就是在現實世界中也有由全球開發者維護的node學校。如果你想親臨現場,可以檢視這份活動清單

JavaScript Jabber

如果你是個喜歡播客的人,JavaScript Jabber是為你準備的,JS Jabber時不時會邀請業內頂尖人物,討論的也是熱門話題。

尋求幫助

這份清單並沒有變動很多,因為你也知道要找到靠譜的JS支援資源可不是一件容易的事。

JSMentors

我依然認為在JSMentors上你可以找到關於JS問題的最好的答案。這個社群有靠譜的規則來保證使用者的體驗,避免開發者受到糟糕的對待。當然SO提供了很棒的答案,但是你要很仔細的審查答案,SO上貢獻者實在太多了,你要去關注那些高質量的答案。

結論

正如你所看到了,相比去年這份清單更改了許多地方,因為JS世界中多了許多新的可取的資源,還有一些新的影響因素在影響這個世界。最棒的一點就是,如果你是個JS開發者或者想要給這個世界做點什麼,隨著JS慢慢地成為了Web開發的通用語言,可以做的事情越來越多。

相關文章