1. 程式人生 > >前端推薦書籍從HTML到JavaScript到AJAX到HTTP到,從框架到全棧過來人幫你你走更少彎路

前端推薦書籍從HTML到JavaScript到AJAX到HTTP到,從框架到全棧過來人幫你你走更少彎路

前言:作為一名前端開發人員,如果你告訴我你沒有看過任何關於前端的書籍,那麼我完全可以認為你不是一名合格的前端開發工程師。為什麼我要以“看書”來衡量合格前端的標準?因為前端作為一個特殊的極具變化與開拓性的工種,沒有較強的自我學習與思考能力,很難在這激烈又紛雜的環境裡存活而不被淘汰,而“看書”則是最基本的自我提升與補充知識的途徑。

書中自有黃金屋。不管你是想涉獵前端抑或進行系統性的學習,我都推薦大家閱讀前端的相關書籍。

技術書閱讀方法論

一.速讀一遍(最好在1~2天內完成)

人的大腦記憶力有限,在一天內快速看完一本書會在大腦裡留下深刻印象,對於之後複習以及總結都會有特別好的作用。

對於每一章的知識,先閱讀標題,弄懂大概講的是什麼主題,再去快速看一遍,不懂也沒有關係,但是一定要在不懂的地方做個記號,什麼記號無所謂,但是要讓自己後面再看的時候有個提醒的作用,看看第二次看有沒有懂了些。

二.精讀一遍(在2周內看完)(並且記得看下面的博文)

有了前面速讀的感覺,第二次看會有慢慢深刻了思想和意識的作用,具體為什麼不要問我,去問30年後的神經大腦專家,現在人類可能還沒有總結出為什麼大腦對記憶的完全方法論,但是,就像我們專業程式設計師,打程式碼都是先實踐,然後就漸漸懂了過程,慢慢懂了原理,所以第二遍讀的時候稍微慢下來,2周內搞定。記住一句話:沒看完一個章節後,總結一下這個章節講了啥。很關鍵。

三.實踐(在整個過程中都要)

實踐的時候,要注意不用都去實踐,最好看著書,敲下程式碼,把重點的內容敲一遍有個肌肉記憶就很不錯了。

以及到自己做過的專案中去把每個有涉及的JVM虛擬機器的程式碼,研究一遍,就可以了。

一.HTML系列書籍從入門到進階系列

1.《HTML5 揭祕》

是知名的《HTML5:up and running》的中文譯本,

很詳細的介紹了HTML5的最新技術,如果你經常看Dive into HTML 5這個網站,肯定很瞭解這本書了。

算是入門款書籍,不枯燥,技術層面一般,適合菜鳥看,好在對格局有一定見解。當然如果一丁點程式設計知識都沒有,也需要在閱讀的時候多補充一下,非常推薦。

2.《響應式Web設計:HTML5和CSS3實戰》BenFrain (作者), 王永強 (譯者) 

關於HTML5,最牛逼的10本書!

 全書主要是帶領讀者做一個小網頁來寫的,其實響應式的東西講得比較少,大半內容是介紹H5和css3的基礎知識。如果同時想了解H5和css3和響應式設計入門,這本書不錯。

3.《瘋狂HTML 5/CSS3/JavaScript講義》  李剛 (作者)  

關於HTML5,最牛逼的10本書!

 簡介:這是一本全面介紹HTML 5、CSS 3和JavaScript前端開發技術的圖書,系統地介紹了HTML 5常用的元素和屬性、HTML5的表單元素和屬性、HTML 5的繪圖支援、HTML5的多媒體支援、CSS 3的功能和用法、最前沿的變形與動畫功能等。除此之外,《瘋狂HTML 5/CSS 3/JavaScript講義》還系統地介紹了JavaScript程式設計知識,包括JavaScript基本語法、DOM程式設計,以及HTML 5新增的本地儲存、離線應用、JavaScript多執行緒、客戶端通訊支援、WebSocket程式設計等。

 4.《HTML5觸控介面設計與開發》 伍茲 (StephenWoods) (作者), 覃介右 谷嶽 (譯者)

關於HTML5,最牛逼的10本書!

簡介:《HTML5觸控介面設計與開發》專注於觸控介面的開發,內容的結構和優化網站的思路大概一致。上半部分涵蓋了能使各類網站,特別是移動網站變快的基本概念。書的後半部分是專門講觸控介面的,特別是儘可能地讓它們更平穩和快速。本書適合具有一定經驗的Web開發者閱讀參考。

5.《HTML5高階程式設計》

《HTML5 高階程式設計》是《Pro HTML5 Programming》的中文譯本,寫的相對比較深入,如果你對HTML5有較多瞭解,可以選擇這本書。這本書適合有豐富程式設計經驗的Web應用開發者。書中沒有網際網路發展基礎知識的介紹。但是書中有許多現成的資源可以加快學習Web程式設計原理。當然,對於程式的的書跟平常的名著還不一樣,因為自身經驗不同,看法不同,需求不同,對於書的評價也不同。

二.CSS系列書籍從入門都進階系列

1.《HTML & CSS設計與構建網站》

此書讓我們知道,網頁語言的書不只有呆板與枯燥,也可以賞心悅目,舒適的色彩搭配,恰到好處的圖文編排!連插圖都那麼舒服。         除了書的裝訂不好以外(出版社為了賺錢呀,太耐糙了銷量就小了),內容牛逼!給我們查漏補缺做工具書再適合不過了,介紹了新的HTML 5和CSS 3還有網站的設計以及網站的優化,雖然不多,也涉獵到了,更新很快,要知道,網際網路的發展是一日千里。         如果沒猜錯,我估計作者是個MM,哈哈哈。

2.《CSS權威指南 (第3版)》

2000年時候的書,本來以為內容會比較舊,讀了才發現內容全、系統,比現在網上各種版本的css教程之類要好的多,事實上好多都是從這本書摘出來的Eric A.Meyer,牛人,書裡關於css的教程語言表述很清楚,章節合理,主要講css1及css2中的佈局、定位值得看,以前想看,正好在學校的圖書館找到,看完說不定買本放著,的確不錯。

3.《精通CSS(第2版)-高階Web標準解決方案》

本書彙集了最有用的CSS技術,介紹了CSS的基本概念和最佳實踐,結合例項探討了影象、連結和列表的操縱,還有表單設計、資料表格設計、純CSS佈局等核心CSS技術。

4.《Eric Meyer 談 CSS(卷2)》

這本書已一個又一個專案為基礎,詳細的展示瞭如何書寫規範的樣式,文章末尾已一個CSS禪意花園的專案為結尾,並告訴製作者,要做到純粹的樣式與結構相分離式不可能的。 推薦頁面製作者閱讀者本經典之作。

5.《CSS禪意花園》

第一次看有點糊里糊塗的,所以有些方面理解的模模糊糊。在這次看的過程中慢慢的理解了作者的一些意圖,屬於越看越有感覺的一本書。類似讀中國古詩一樣,越讀越有興趣,對自己網站頁面的架構有很深的推動。

三.JavaScript從入門到進階系列

就是有一定的基礎(比如最常見的HTML標籤及其屬性、事件、方法;最常見的CSS屬性;基礎的JavaScript程式設計能力),能夠完成一些簡單的WEB前端需求。

1.推薦:《JavaScript Dom程式設計藝術》

理由:此書絕對是入門的好書,本人也是在接觸JS一段時間後才看的這本書。此書從JS的歷史 – JS基礎語法知識 – DOM介紹和簡單的使用。現在這本書已經出了第二版,需要的朋友直接第二版就行。 評價:簡潔,實用,詳細,易懂,書不厚,相信很快就能看完。 算是很好的經典入門書了,貫穿一個例項,把JavaScript的優點表現的淋漓盡致,非常強大。

2.推薦:《JavaScript權威指南(第5版)》

理由:非常強大(這名字可不是白起),其實說起來也慚愧,本人至今都沒有買過這本書,最開始是因為 這個書實在是小貴,只好借朋友的看,不過也就看了個週末。網上關於此書的評價很多,意思大概都是說這書就是一個JS的文件手冊,如果你有閒錢,並且習慣翻 書查詢,那麼就來一本吧。順便提醒一句,這本書的第六版英文版已經出來了。

本人以前的DEV leader兼恩師這麼說過:“初級開發人員的標誌就是需要在中級和高階開發的指導下完成工作”。首先不要苛責程式碼的對錯嚴謹,畢竟每個程式設計師都有這樣的一個過程,就是這個級別的特徵。

3.推薦:《JavaScript高階程式設計》(第三版)

理由:這本書的作者是 Nicholas C.Zakas ,部落格地址是 http://www.nczonline.net/ ,大家可以去多關注,雅虎的前端工程師,是YUI的程式碼貢獻者,可想而知這本書得含金量,他出的書都廣受好評。這本書已經出了第二版,而且與第一版相比內 容更新很大,直接第二版就行。不要被書名的“高階”唬住,只要有JS基礎語法知識和DOM基礎知識就行,而且本書開始階段還是介紹JS和DOM的語法知 識。有一定JavaScript的基礎可以看看,不過沒基礎也可以看看,wrox經典書籍。

評論:重點推薦一下第五章(型別),第六章(OOP),第七章(匿名),多看幾遍,至少要完全看明白,能為以後進階打好基礎,個人感覺這幾章是本書的 精華所在。這本書在入門的時候看節奏會快了一些,所以不建議初學者看,可是相對於我一會要介紹的書又算基礎一點,所以建議先閱讀完這本書,對瀏覽器相容和 語法知識有一定了解之後再往下閱讀。

4.推薦:《高效能JavaScript》《JavaScript語言精髓與程式設計實踐》

理由:本人先看的是《高效能JS》,這本書還是 Nicholas C.Zakas 所著,經典之作,書中大量舉例了各種不同寫法的JavaScript在瀏覽器中的效能情況,對規範JavaScript程式碼和提升效能有很好的幫助,最後 提到了很多工具和效能測試的方法,都是灰常灰常有實際作用的,看得出作者很厚道(好吧,偶承認了,偶是他的粉絲)^_^,記憶最深的一句話:”如果 JavaScript 執行了幾秒鐘,那麼很可能是你做錯了什麼”;《語言精髓》和《高效能》有少部分關鍵知識都重複提到了,可是為什麼要推薦這本書,因為本書對JS語言本質的描述太棒了,這是一本介紹 JavaScript語言本質的權威書籍,從 “物件”,“函式”,“繼承”,“陣列”等等多個重要知識著手。我補一句話 – 本書需要反覆閱讀。 評論:都是好書,都很薄,而且所說的內容只要有基礎都不難。相信讀完之後會對JS又有新的認識,且對以後的程式碼規範和瀏覽器差異性等高階問題有了新的認識,如果讀完之後會有種被灌頂的感覺,那麼恭喜你,你離中級不遠了。作為Orelly唯一一本我確實認可的javascript相關的書。

他摒棄了Orelly系列所有我不喜歡的特點:

老外的聊天說教式閱讀體驗,樣例不夠豐富,排版單一,破事水等。

他的優點如下:

1. 情景豐富,基本涉及所有js效能優化的場景。還會給出不同場景的實際測試資料,真實可信。我們在閱讀這些場景例項的同時也豐富了自己js的使用經驗。

2. 給出了很多看似"旁門左道"的解決方案,而這些冷門的解決方案恰恰是有些人死活百度不到的真正能解決問題的最優解。

3. 在說問題的同時說原理,深入淺出,遊刃有餘。所以這本書不僅僅是一本介紹js效能相關的書,而是一本涉及瀏覽器原理,js解析原理,使用者體驗等知識的javascript最佳註解。

閱讀建議:

建議和高程三一起看,可以算是高程三閱讀的最佳伴侶。

高程三告訴你“他叫什麼,他什麼樣”,

這本書就告訴你“他為什麼”,“他該怎樣”。

所以,當別人還在為某些問題絞盡腦汁的時候,你已經從起點上幹翻他們了。

5.推薦:《深入淺出JavaScript》

理由:Ajax程式設計師必備 裡面講自己開發的一個JavaScript框架。

6. 推薦《學習Javascript資料結構與演算法》

理由:這本書相對是一本冷門書。為什麼我會推薦他,是因為他能解決每個半路出家的js程式設計師都曾思考過的一些問題:

1. 我們的陣列Array這麼強大,要棧Stack,佇列Queue這些功能少,半半拉拉的東西幹什麼呢?

2. 我們學的資料結構搞來搞去好像也就那些玩意,為什麼被大家這麼推崇,還要分門別類討論呢?

所以這本書只是為何告訴你上面這些問題的答案:

1. 棧和佇列本來就沒有Array功能強。沒有Stack和Queue類只是因為ES5不去實現它而已。作為一種相互之間存在一種或多種特定關係的資料集合,其存在意義是不應該被其功能強大與否來決定的。

2. 資料結構和程式語言無關。語言死了,他們會在下一門語言裡重生。哪怕計算機死了,他們都會在下一個概念體裡重生。

閱讀建議:跟著書本把這裡面的結構全部敲一遍,快的話一天就能搞定。從此你便再不怕懼怕js相關的簡單資料結構問題。

但是,遇上高階的樹,圖等問題該跪還是要跪。因為這本書虎頭蛇尾,後面的高階點的資料結構介紹的不夠深。

適合經常反思“它從哪裡來,要到哪裡去?”的js程式設計師,或後悔以前資料結構沒好好學的前端同學。

還是本人以前的DEV leader兼恩師這麼說過:“中級開發人員的標誌就是在高階開發或架構師較少的指導下高質量的完成工作,並對產品或專案有自己的想法與理解”。

7.強烈推薦:《JavaScript DOM高階程式設計》

理由:此書灰常犀利,本人一共看了近半年的時間,已反覆閱讀多次。說實話,這本書的翻譯一般,程式碼也有少許錯誤,可是這不影響這本書的強大,通過學習 本書,可以理解一個JS的庫如何產生,自己動手寫一個簡單的自己的JS庫,如果你打算研究其他的JS庫或者正在研究其他的JS庫,那麼這本書會使你的理解 達到新的高度,進階高階必讀,寫庫必讀。 評論:異常強大的一本JS鉅作,此書不薄,強烈推薦。

8.強烈推薦:《JavaScript設計模式與開發實踐》

理由:我認為騰訊AlloyTeam的這本書對我幫助媲美高程三。那時候我恰好換公司,從原來的開發方式切換成另一種完全不同的開發方式,讓我很不適應。這本書及時的蹦出來,他拿實際的應用場景舉例,告訴你不同js專案裡如何共通設計模式,還極其詳細的介紹了函式的高階用法,能讓你對js高階函式的認知上升一個臺階。難能可貴的是他還拿java作為靜態語言的類比。從語言統一高度來給你分析這些問題。和上本介紹資料結構的書一樣,這本書有的放矢,能完美的解決對js設計模式有疑問的同學的實際問題。他比上本書更深刻,更易讀,也更貼近實踐。評論:書不厚,可真的是內容豐富且高深,強烈建議購買。

閱讀建議:

這是本適合反覆閱讀的書籍。

如果你的思路能根據應用場景自動切換到最適合的設計模式,說明你已吃透這本書了。

9.推薦:《高效能網站建設指南》《高效能網站建設進階指南》

理由:在讀完前幾本書之後我們對前端的效能和自己的程式碼的效率已經達到相當的高度了,然後我們在接觸一些前端工程師的一些精髓。本書對HTTP請求,CDN,內容快取和一些web開發中常見問題進行講解。 評論:書都不厚,可是說的都是比較實用的東西,可是用不用的上還得看個人和專案需要了。

10.推薦:《精通JavaScript》

理由:把JavaScript講得很面向物件。很現代! 圖靈教育的出版引進書籍有很多都是經典書籍,非常好,建議大家有時間就去www.turingbook.com看看。 

11. 推薦:《你不知道的JavaScript》

大名鼎鼎的Github開源的書籍。為了他的名氣我也得買一本實體書來拜讀下。這本是上卷,只涉及作用域和閉包,this和物件原型兩部分。不過其深入程度是其他js書籍難以企及的。可以說,這已經是大部分前端程式設計師對js語法可以深入瞭解的最底層了,再往下就直面編譯原理了。

閱讀建議:

用於提升自己的js語法的理解等級。

對於進入工作第二年的想深入理解js語法的同學來說特別有效。

四.HTTP網路系列從入門到進階系列

1.《圖解HTTP和圖解TCP/IP》

相較於前兩本大厚書,這兩本書更加親民,小白可以買來看看,還是很適合入門的。

2.《計算機網路:自頂向下》

這本從應用層講到物理層,感覺這種方式學起來更輕鬆,我比較推薦小白看這本。

 3.《HTTP權威指南》

內容全面,涉及http及其周邊方方面面,http前世今生,http響應機制,http連線過程,http安全認證,http編碼,http頁面上傳等等。讀完對http有一個全面的認識,尤其是最近回頭重讀了安全部分內容,感覺收穫不小: cookie有兩個版本,由伺服器set,在客戶端每次請求時附加,作為認證/追蹤憑證,cookie可配置限期和作用域; 帳號認證有base64方式和hash方式,都存在安全隱患; https是王道,https = ssl + http。

  五.AJAX系列從入門到進階推薦

1.《Ajax基礎教程》(亞馬遜計算機榜首圖書,國內第1本Ajax圖書) (美)阿斯利森,(美)舒塔 著,金靈 

AJAX必備圖書之一、國內發行的第一本AJAX圖書,也是目前最好的AJAX入門書,如果是AJAX新手,此書是最好的入門圖書。本書基本包括了實現Ajax需要了解的大部分技術與工具,讓您在一開始就對AJAX就有一個整體把握與全域性觀念。

2.《Ajax實戰》(Ajax in action中文版)  

 

AJAX必備的圖書之二:人稱“AJAX聖經”,AJAX的進階最佳。特點就是足夠深入,僅此一點,已經足夠。

進階看著一本能看懂就相當不錯了。

六.vue.js從入門到進階系列

1.《vue.js權威指南》

一般,入門看看就好。其中有部分是引用網上的,有點坑,看看電子版,對vue.js提升還是有點幫助的。大佬就不推薦了。

2.《vue.js實戰》

由雨溪大佬的書,前端人不看會後悔的,特別是Vue.js這系列。

七.正則表示式系列

1.《正則表示式必知必會》 

在該書的序言中作者已經提到過一些 大部頭的正則表示式的書,而且作者也聲明瞭:該書比較適合那些不太瞭解正則表示式而又想盡快入門能夠解決一些實踐中遇到的小問題的朋友們。我最近在看這本書,因為以前有一點半點的學習過正則表示式,感覺正則表示式語法雖然不算難,但是要真正用好還是有點難度的。需要大量的實踐經驗。這本書的正文內容大概十章左右,前五章都算一些基礎知識,也是我以前就知道的,後面的幾章也許你也知道,但是個人認為算是一些稍微高階點的內容。所以我想,如果你還不怎麼精通正則表示式,在工作中使用起來比較費力的話,這本書倒也挺適合的。查漏補缺吧。學前端都適合看看。

 2.《精通正則表示式》

我強烈推薦這本書,我看了之後對其的執行過程有了深入地瞭解,現在對一般的問題,執行的效率都有一定的提高。這個本買來很長時間了 感覺太厚 就一直沒有看,這點時間突然對正則表示式感興趣了 就看了 前幾張的內容很值得看 尤其是中間幾章,我是徹底瞭解了正則的工作原理 以前工作中出現的一些情況原來想不明白,現在也就覺得應該是這樣子了 建議大家靜下心來看這本書。

一.HTML系列書籍從入門到進階系列

1.《HTML5 揭祕》

2.《響應式Web設計:HTML5和CSS3實戰》

3.《瘋狂HTML 5/CSS3/JavaScript講義》   

4.《HTML5觸控介面設計與開發》 

5.《HTML5高階程式設計》

二.CSS系列書籍從入門都進階系列

1.《HTML & CSS設計與構建網站》

2.《CSS權威指南 (第3版)》

3.《精通CSS(第2版)-高階Web標準解決方案》

4.《Eric Meyer 談 CSS(卷2)》

5.《CSS禪意花園》

三.JavaScript從入門到進階系列

1.《JavaScript Dom程式設計藝術》

2.《JavaScript權威指南(第5版)》

3.《JavaScript高階程式設計》(第三版)

4.《高效能JavaScript》《JavaScript語言精髓與程式設計實踐》

5.《深入淺出JavaScript》

6.《學習Javascript資料結構與演算法》

7.《JavaScript DOM高階程式設計》

8.《JavaScript設計模式與開發實踐》

9.《高效能網站建設指南》《高效能網站建設進階指南》

10.《精通JavaScript》

11. 《你不知道的JavaScript》

四.HTTP網路系列從入門到進階系列

1.《圖解HTTP和圖解TCP/IP》

2.《計算機網路:自頂向下》

 3.《HTTP權威指南》

 五.AJAX系列從入門到進階推薦

1.《Ajax基礎教程》(亞馬遜計算機榜首圖書,國內第1本Ajax圖書) (

2.《Ajax實戰》(Ajax in action中文版)  

六.vue.js從入門到進階系列

1.《vue.js權威指南》

2.《vue.js實戰》

七.正則表示式系列

1.《正則表示式必知必會》 

2.《精通正則表示式》

附上推薦乾貨部落格推薦: