最近在學(xué)習(xí)Node.js,此前雖在網(wǎng)上學(xué)過一些教程浴井,但總感覺缺點什么晒骇,現(xiàn)在大致知道了,嗯磺浙,就是缺看書洪囤。在這里順便貼一下我的學(xué)習(xí)資料,可以為大家提供一個參考撕氧,歡迎補(bǔ)充瘤缩。
0. HTML、CSS伦泥、JavaScript知識肯定是不可或缺的剥啤。
1. Node.js官方文檔:Node.js v6.10.3 中文文檔
下載安裝必然從官網(wǎng)開始,而了解它也是從官方文檔開始不脯。學(xué)習(xí)一門新技術(shù)府怯,api文檔永遠(yuǎn)是必要的,它可以解決你很多問題防楷。每一門語言從開始到成熟到會經(jīng)歷一個復(fù)雜的過程牺丙,Node.js也不例外。從Node.js誕生后也經(jīng)歷了一些分裂過程复局,曾經(jīng)分了Node.js和io.js兩個分支冲簿,所幸最后又合到一家了。感謝開發(fā)者們的貢獻(xiàn)亿昏。
2.入門
Node入門:
正如它的名字一樣峦剔,可以幫你大致了解一下Nodejs Web應(yīng)用的構(gòu)建過程,很不錯的入門書角钩。
從package.json說起:
package.json是必須的吝沫。package.json文件是從nodejs和npm兩個層面來描述項目的呻澜。npm是隨nodejs一塊安裝的,npm是最大的包管理器野舶,可以下載第三方模塊易迹,這些模塊封裝了官方的api,使我們開發(fā)更簡單和方便平道。當(dāng)我們看到一個用npm install安裝的模塊或一個基于nodejs的Web應(yīng)用時睹欲,我們通常都會看到package.json文件。所以我認(rèn)為我們有必要了解它一屋。這里的鏈接指向阮一峰編寫的參考窘疮,阮大神,我就不多說了冀墨,之前查資料總會查到他的博客闸衫,使我受益匪淺呀。
package.json的存在主要是為了分享更方便诽嘉。因為里面記錄的是我們的應(yīng)用所依賴的模塊蔚出。有了它,我們分享應(yīng)用的時候不必把我們的node_modules上傳虫腋。使用者只需用npm install命令就可以將需要的模塊下載完成骄酗,下載哪些模塊是由保存在package.json文件的”dependencies”和“devDependencies”字段決定的。其中dependencies字段指定了項目運(yùn)行所依賴的模塊悦冀,devDependencies指定項目開發(fā)所需要的模塊趋翻。試想一下,我們要分享應(yīng)用時還需發(fā)送給對方node_modules目錄盒蟆,里面可能有幾萬個小文件踏烙,這是多么殘忍的事情。
3.進(jìn)階
推薦幾本書籍历等,這兩本書寫于2012或2013年讨惩,雖然現(xiàn)在看來有些老了,但是還是能幫助我們理解Node.js的寒屯,畢竟經(jīng)典荐捻。由于成書時間早,有些api的接口現(xiàn)在可能已經(jīng)廢棄了浩螺,雖然還可以用,但還是以官方文檔為準(zhǔn)仍侥。
《了不起的Node.js:將JavaScript進(jìn)行到底》:
本書的作者厲害了要出,是socket.io、Mongoose等模塊的開發(fā)者农渊。這是一本很好的書籍患蹂,每章都會通過實戰(zhàn)構(gòu)建項目來幫我們學(xué)習(xí)或颊,先后介紹了TCP、Http传于、Connect囱挑、Express、WebSocket沼溜、MongoDB平挑、MySQL、Redis在Node.js的應(yīng)用系草,很有實戰(zhàn)價值通熄。
《深入淺出Node.js》:
阿里巴巴資深工程師樸靈編著,這本書需要一定基礎(chǔ)找都,大部分講解理論唇辨,從模塊機(jī)制到異步I/O、異步編程能耻、內(nèi)存控制赏枚、理解Buffer,再到網(wǎng)絡(luò)編程晓猛、構(gòu)建Web應(yīng)用饿幅、進(jìn)程、產(chǎn)品化等鞍帝,從理論和應(yīng)用構(gòu)建角度講解Node.js诫睬,是一本很好的書籍∨劣浚可以幫我們更好的理解Node.js的理論摄凡。此前我就受苦于會用但不知道原理的困境,這本書為我打開了一扇新的大門蚓曼。
兩本書一本偏實戰(zhàn)亲澡,一本偏理論,可以幫助我們更好的了解Nodejs纫版。當(dāng)然由于本人才疏學(xué)淺床绪,還有其他的好書歡迎補(bǔ)充。