整合營(yíng)銷服務(wù)商

          電腦端+手機(jī)端+微信端=數(shù)據(jù)同步管理

          免費(fèi)咨詢熱線:

          熱愛讀書的好少年們,HTML5直播技術(shù)5本書籍推薦拿

          熱愛讀書的好少年們,HTML5直播技術(shù)5本書籍推薦拿走不謝~

          丨白及

          學(xué)習(xí)是一個(gè)持續(xù)不斷的過程,在互聯(lián)網(wǎng)技術(shù)里暢游的程序員們,對(duì)學(xué)習(xí)的渴望更是難以窮盡。為此,小拍在周五開設(shè)“小拍薦書” 的欄目,為大家推薦技術(shù)相關(guān)書籍,方便大家在周末適時(shí)充電~

          流媒體是指采用流式傳輸?shù)姆绞皆贗nternet播放的媒體格式。商家用一個(gè)視頻傳送服務(wù)器把節(jié)目當(dāng)成數(shù)據(jù)包發(fā)出,傳送到網(wǎng)絡(luò)上。用戶通過解壓設(shè)備對(duì)這些數(shù)據(jù)進(jìn)行解壓后,節(jié)目就會(huì)像發(fā)送前那樣顯示出來。(來自:百度百科)

          流媒體的技術(shù)革新推動(dòng)了音視頻行業(yè)技術(shù)日新月異的發(fā)展,更是直播行業(yè)興起,火爆的技術(shù)根基。本期薦書推薦了5本與HTML5直播技術(shù)相關(guān)的技術(shù)書籍。

          12月1日晚上,深度參與“又拍直播云”開發(fā)的劉博(又拍云多媒體開發(fā)工程師)就如何利用WebSocket+MSE實(shí)現(xiàn)HTML5直播,在微信群里進(jìn)行了分享(點(diǎn)擊閱讀)。

          小拍請(qǐng)劉博推薦了2本與HTML5直播技術(shù)相關(guān)的書籍:

          《Learning WebRTC中文版》

          推薦星級(jí):4星

          推薦人:劉博

          推薦理由

          本書內(nèi)容比較偏向前端,內(nèi)容不是非常全面,適合作為WebRTC領(lǐng)域的入門書來看。

          WebRTC是實(shí)現(xiàn)HTML5直播技術(shù)的最新協(xié)議,也是目前實(shí)現(xiàn)用戶體驗(yàn)較好的協(xié)議。《Learning WebRTC 中文版》使用形象的案例介紹,逐步深入地闡述了WebRTC 的幕后工作原理。本書包含了創(chuàng)建一個(gè)WebRTC應(yīng)用所必需的知識(shí),包括獲取用戶設(shè)備信息、創(chuàng)建WebRTC應(yīng)用的客戶端和服務(wù)器、連接用戶并發(fā)送數(shù)據(jù)、文件共享、數(shù)據(jù)信息安全和性能優(yōu)化。《Learning WebRTC 中文版》適合有一定HTML和JavaScript 經(jīng)驗(yàn),希望了解并學(xué)習(xí)WebRTC 的開發(fā)者參考閱讀。

          讀者短評(píng):

          dhcn:內(nèi)容少,體量大,可以學(xué)到一些東西。

          《WebRTC權(quán)威指南》

          推薦星級(jí):5星

          推薦人:劉博

          推薦理由

          國(guó)內(nèi)第一本W(wǎng)ebRTC方面的中文書籍,內(nèi)容包含了WebRTC的方方面面。本書的作者都是WebRTC和SIP等相關(guān)標(biāo)準(zhǔn)的指定者,所以,可以當(dāng)做權(quán)威參考來看。

          如果說《Learning WebRTC中文版》側(cè)重于案例、入門,以案例講解原理,且不夠全面,那么《WebRTC權(quán)威指南》則對(duì)標(biāo)準(zhǔn)進(jìn)行了全面、精確介紹 ,包含大量的演示應(yīng)用、示例代碼、各類數(shù)據(jù)和圖表。本書是互聯(lián)網(wǎng)實(shí)時(shí)通信開發(fā)者和技術(shù)決策者的權(quán)威參考指南。作者Daniel C. Burnett博士是WebRTC標(biāo)準(zhǔn)的主要作者,在書中對(duì)標(biāo)準(zhǔn)的方方面面做了精確到位的介紹。Alan Johnston 博士是今日通信業(yè)核心標(biāo)準(zhǔn)SIP的主要作者,多年的行業(yè)實(shí)踐和全局視野讓他能夠深入淺出地給出WebRTC相關(guān)技術(shù)問題和發(fā)展方向的真知灼見。

          另有Jsone,大蕉推薦了此書:

          Jsone:《WebRTC權(quán)威指南》是WebRTC和標(biāo)準(zhǔn)主要作者聯(lián)袂撰寫,互聯(lián)網(wǎng)實(shí)時(shí)通信技術(shù)的指南,可以全方位深入解讀標(biāo)準(zhǔn)的方方面面。

          大蕉:主題是流媒體,推薦這本書比較切合。

          讀者短評(píng):

          我有繡春刀:前面關(guān)于網(wǎng)絡(luò)知識(shí)點(diǎn)的講解很棒,后面的瀏覽器API與協(xié)議這部分也很不錯(cuò)!

          Arbow:這其實(shí)是一本關(guān)于移動(dòng)網(wǎng)絡(luò)下性能優(yōu)化的書,相見恨晚。

          下面是小拍和“拍友”們推薦的書籍啦~

          《HTTP權(quán)威指南》

          推薦星級(jí):5星

          推薦人:又小拍

          推薦理由

          流媒體底層協(xié)議用了HTTP協(xié)議,本書對(duì)HTTP協(xié)議的介紹比較全面。

          HLS httpflv使用了HTTP協(xié)議 ,深入了解HTTP協(xié)議,不論是對(duì)HTML5直播技術(shù)的開發(fā),還是HTTPS的升級(jí)而言,都必不可少。本書中,作者梳理了HTTP中一些互相關(guān)聯(lián)且常被誤解的規(guī)則,并編寫了一系列基于各種主題的章節(jié),對(duì)HTTP各方面的特性進(jìn)行了介紹。而且,為了節(jié)省大家尋找參考文獻(xiàn)的時(shí)間,作者還對(duì)很多HTTP應(yīng)用程序正常工作所必須的、重要的非HTTP技術(shù)進(jìn)行了介紹。

          讀者短評(píng):

          Tony Bai:要全面了解HTTP,非此書不可。

          《JavaScript忍者秘籍》

          推薦星級(jí):5星

          推薦人:Phunsukh Wangdu

          推薦理由

          可汗學(xué)院計(jì)算機(jī)科學(xué)學(xué)院的院長(zhǎng),也是jQuery JavaScript庫的創(chuàng)造者John Resig編寫的一本深入剖析JavaScript語言的書,正在使用jQuery,想要更深入的了解jQuery,都值得讀一讀這本書。

          JavaScript腳本是現(xiàn)代瀏覽器、網(wǎng)頁的必備元素,在Web端實(shí)現(xiàn)流媒體必然需要調(diào)用JavaScript腳本,學(xué)好JavaScript語言是研究HTML5必不可少的基礎(chǔ)。本書對(duì)JavaScript語言的重要部分(函數(shù)、閉包和原型)進(jìn)行深入、全面的介紹,全書從高級(jí)Web應(yīng)用程序開發(fā)者所面臨的挑戰(zhàn)談起,將嚴(yán)謹(jǐn)?shù)睦碚撝v解和實(shí)用的代碼示例相結(jié)合,從準(zhǔn)入訓(xùn)練、見習(xí)訓(xùn)練、忍者訓(xùn)練和火影訓(xùn)練四個(gè)層次講述了逐步成為JavaScript高手的全過程。

          讀者短評(píng):

          子龍:JavaScript開發(fā)者都應(yīng)該讀的、接近編程思想層面的書。jQuery創(chuàng)始人,實(shí)力真是強(qiáng)大!

          《Vue.js權(quán)威指南》

          推薦星級(jí):4星

          推薦人:張興偉

          推薦理由

          Vue.js是一個(gè)用來構(gòu)建網(wǎng)頁界面的JavaScript庫,同其它的一些工具結(jié)合在一起,它也可以成為一個(gè)新“框架”。Vue.js是頂級(jí)的JavaScript框架之一,它在許多場(chǎng)景中可以被用來替換Angular和React。

          開發(fā)基于Web端的流媒體應(yīng)用,Vue.js是一個(gè)不錯(cuò)的選擇,Vue.js是2016年非常火的JavaScript MVVM庫,目前已推出Vue.js 2.0;相比其他JavaScript庫,Vue.js更加像一套可以靈活選擇的工具組合。《Vue.js權(quán)威指南》有多位作者來自于滴滴出行前端團(tuán)隊(duì),致力于普及國(guó)內(nèi)Vue.js 技術(shù)體系,讓更多喜歡前端的人員了解和學(xué)習(xí)Vue.js,由淺入深地講解了Vue.js 基本語法及源碼解析,本書主要內(nèi)容包括數(shù)據(jù)綁定、指令、表單控件綁定、過濾器、組件、表單驗(yàn)證、服務(wù)通信、路由和視圖、vue-cli、測(cè)試開發(fā)和調(diào)試、源碼解析及主流打包構(gòu)建工具等。

          Tips:本書第一次印刷有部分別字,建議購(gòu)買第二次印刷,已購(gòu)買第一次印刷的讀者可以享受免費(fèi)更換第二次印刷版的福利。

          本期書籍推薦完畢,感謝劉博、張興偉、Phunsukh Wangdu、Jsone、大蕉在技術(shù)領(lǐng)域開放的知識(shí)分享精神,推薦了上述好書。5位小伙伴可在本期書單中選擇1本自己心儀的書籍,小拍將會(huì)把書籍送給您或您指定的朋友,作為又拍云的小小心意。

          同時(shí)也感謝其他推薦者,如在后期書籍推薦中,您推薦的書籍被選入書單,我們將第一時(shí)間聯(lián)系您,饋贈(zèng)您。

          小拍的推薦只是拋磚引玉,如果大家有覺得很贊的技術(shù)類書籍,戳戳戳到文末評(píng)論區(qū)以“書名+推薦理由”的形式留言,一旦推薦書籍上榜書單,推薦者即可在該期書單中挑選一本書籍,小拍即刻奉送該書作為感謝。您可以選擇把書送給自己,也可以送給您指定的一位朋友。

          最后放一些“又拍云線上分享群”的薦書盛況,大家隨意感受一下技術(shù)圈熱愛讀書的好少年們~

          何學(xué)好HTML5呢?了解下以下書籍、網(wǎng)站、直播課程一定讓你受益匪淺。

          w3school的xml在線教程

          推薦指數(shù):★★★★★

          適合人群:完全沒接觸過XML的人群;已經(jīng)知道xml大致語法、結(jié)構(gòu)、元素等概念的人群,可以跳過。

          說明:在Java web開發(fā)中,很多配置文件都是XML格式的,因此知道一些XML的概念是絕對(duì)必須的。如果你已經(jīng)有了一些了解,可以不看。

          《HTTP圖解》

          推薦指數(shù):★★★★★

          適合人群:所有人群

          說明:對(duì)于web編程,不可避免地會(huì)涉及到HTTP協(xié)議。這本書有很多圖,對(duì)于HTTP的一些概念介紹的都比較形象,書也不厚,適合入門。

          HTML5+CSS3從入門到精通 李東博 著

          推薦指數(shù):★★★★☆

          適合人群:HTML5新手

          說明:本書通過基礎(chǔ)知識(shí)+中小實(shí)例+綜合案例的方式,講述了用HTML5+ CSS3設(shè)計(jì)構(gòu)建網(wǎng)站的必備知識(shí),相對(duì)于專業(yè)指南、高級(jí)程序設(shè)計(jì)、開發(fā)指南同類圖書,本書是一本適合快速入手的自學(xué)教程。

          HTML5 App商業(yè)開發(fā)實(shí)戰(zhàn)教程——基于WeX5可視化開發(fā)平臺(tái)

          推薦指數(shù):★★★★★

          說明:目前唯一一本真正的HTML5 App開發(fā)教材,目前已有五十多所高校投入教學(xué)使用。它的特點(diǎn)是由淺入深、由易到難,將開發(fā)技巧、和開發(fā)工具結(jié)合在一起闡述,同時(shí)選取了多個(gè)商業(yè)項(xiàng)目APP的實(shí)戰(zhàn)案例進(jìn)行要點(diǎn)講解,通俗易懂。

          最適合入門的在線直播課程 ( 騰訊課堂上)

          飛雀首席講師帶你進(jìn)入HTML5的奇幻世界

          推薦指數(shù):★★★★★

          適合人群:所有人群

          說明:最適合零基礎(chǔ)小白了解HTML5的入門課程,由淺入深,所講案例生動(dòng)形象,由多年HTML5講課經(jīng)驗(yàn)的老師講解,更有針對(duì)性。

          多人問我怎么學(xué)前端?我的回答是:讀書吧!相對(duì)于在網(wǎng)上學(xué)習(xí),在項(xiàng)目中學(xué)習(xí)和跟著有經(jīng)驗(yàn)的同事學(xué)習(xí),書中有著相對(duì)完整的知識(shí)體系,每讀一本好書都會(huì)帶來一次全面的提高。而如果深一腳淺一腳的學(xué)習(xí),寫出代碼的質(zhì)量會(huì)參差不齊。初學(xué)者的首要任務(wù)是成為靠譜的熟練開發(fā)者,能夠穩(wěn)定的輸出有一定質(zhì)量的代碼,這樣才能讓人放心的把任務(wù)交給你。從這個(gè)角度來看,跟著w3school類成體系的網(wǎng)絡(luò)教程學(xué)習(xí)也是不錯(cuò)的選擇,只不過我沒有親自實(shí)踐過。

          當(dāng)然,對(duì)于小白或者根本看不懂書的開發(fā)者來說,我認(rèn)為可以報(bào)個(gè)培訓(xùn)班,畢竟有著完善的體系,如果老師很負(fù)責(zé)的話,但是我認(rèn)為程序員最重要的是學(xué)習(xí)能力和努力程度

          在07年之前,我是在做IEonly的企業(yè)級(jí)B/S應(yīng)用,雖然當(dāng)時(shí)項(xiàng)目的JScript就已經(jīng)非常復(fù)雜,但當(dāng)時(shí)團(tuán)隊(duì)里有很多經(jīng)驗(yàn)豐富的同事,多是跟他們請(qǐng)教 ,或者再M(fèi)SDN和網(wǎng)上找答案。07年進(jìn)入阿里之后,開始直面兼容性問題 ,同時(shí)開始單打獨(dú)斗 ,這個(gè)階段開始接觸相關(guān)的前端書籍 ,最先購(gòu)買的是《JavaScript高級(jí)程序設(shè)計(jì)》和《JavaScript DOM 編程藝術(shù)》。可以說比較幸運(yùn) ,挑中了這兩本很靠譜的書(其實(shí)當(dāng)時(shí)市面上書籍并不多 ,感謝選擇出版這些書和翻譯這些書的同學(xué)們) ,近來這兩本書都出了第二版其生命力可見一斑。

          這幾年來,自認(rèn)讀的前端方面的書不算少,校招同學(xué)們問到有什么書推薦 ,我還是會(huì)列幾個(gè)批次的書籍出來給大家,在這里公布一下,沒法說這是最優(yōu)學(xué)習(xí)路線 ,但真看進(jìn)去了獲得一個(gè)IT民工從業(yè)資格是沒啥問題的。咱也先秀下書架吧(喜歡紙質(zhì)書,可以翻舊,可以涂涂寫寫,可以折上幾個(gè)頁角,可以歪在一邊用任何得勁兒的姿勢(shì)看):

          說說我對(duì)于書的選擇,在從高級(jí)程序設(shè)計(jì)以及DOM編程藝術(shù)獲得了較好的用戶體驗(yàn)之后,基本上延續(xù)了選擇譯著的路子,屬順勢(shì)而為倒沒有什么特殊的因素在里頭。而我一般不會(huì)推薦英文原版書,中文更具親和力,JavaScript并不是一門多么高深的語言,我相信譯者是可以在深刻理解原文的基礎(chǔ)上做翻譯的。我也會(huì)讀一些外文書,而往往當(dāng)我知道一本不錯(cuò)的書籍有了出版計(jì)劃,就會(huì)停止精讀,等譯作出版( 比如不久前的《高性能JavaScript》)。不過確實(shí)有時(shí)會(huì)遇到術(shù)語翻譯不一致,甚至翻譯的不通順的情況,好在多書網(wǎng)上可以找到英文電子版,實(shí)在不解之處對(duì)照一下也就可以了。

          下面都是我精讀過且覺得不錯(cuò)的書,先分分類再逐本分享下我的讀書心得:

          第一批次:入門級(jí),也適合想掌握一些前端技能的非前端工程師。

          • 《JavaScript DOM 編程藝術(shù)》

          第二批次:成為一名合格的前端工程師

          • 《JavaScript高級(jí)程序設(shè)計(jì)》(或《JavaScript權(quán)威指南》)
          • 《精通JavaScript》

          第三批次:更優(yōu)秀的代碼 ,更優(yōu)良的設(shè)計(jì)

          • 《JavaScript語言精粹》
          • 《JavaScript設(shè)計(jì)模式》

          第四批次:從語言細(xì)節(jié)到復(fù)雜工程實(shí)踐 ,想開發(fā)靠譜的各類底層代碼 ,應(yīng)該看看

          • 《Secrets of the JavaScript Ninja》
          • 《JavaScript Patterns》
          • 《ECMA-262 in Detail》

          應(yīng)該重視跟蹤閱讀一些大牛們的Blog了。

          一直在等待:一本JavaScript語言作者或引擎實(shí)現(xiàn)者寫的書。

          專業(yè)篇:各類專題書籍,讀好第二批次書籍之后,有精力就接觸下。

          • 《高性能網(wǎng)站建設(shè)指南》
          • 《高性能網(wǎng)站建設(shè)進(jìn)階指南》
          • 《高性能JavaScript》
          • 《Ajax實(shí)戰(zhàn)》
          • 《jQuery實(shí)戰(zhàn)》
          • 《精通CSS》(或《CSS權(quán)威指南》)
          • 《正則表達(dá)式必知必會(huì)》(或《正則表達(dá)式權(quán)威指南》)
          • 應(yīng)該選擇:一本HTML5方面的書
          • 應(yīng)該選擇:一本NodeJS方面的書

          《JavaScript DOM 編程藝術(shù)》

          話說這本書的中文標(biāo)題有一些標(biāo)題黨的,當(dāng)初如果知道這僅是一本入門書籍,我是不會(huì)買來的。拿到后一天就看完了,對(duì)我來說沒有太多技能上的實(shí)質(zhì)幫助。不過這個(gè)書語言很流暢,重要的是對(duì)知識(shí)深淺度把握的很好,html/js/css/dom各個(gè)方面都把握在一個(gè)合適的度,這很符合我對(duì)書籍期望,一步步走,每一步都踏踏實(shí)實(shí)。

          這本書通過幾個(gè)實(shí)例,循序漸進(jìn)的介紹了前端開發(fā)的方方面面,讓大家能夠了解前端的技術(shù)體系概況,又能具備了一些簡(jiǎn)單的動(dòng)手能力。如果大家對(duì)我之前寫過的瀏覽器端技術(shù)體系概覽 — 前端開發(fā)的七種武器有些感覺,那讀讀這本書正好能上手實(shí)踐一把。

          去年,淘寶前端懶懶交流會(huì)的豆瓣小站上做了一個(gè)調(diào)查,如果非要您推薦一本適合新人學(xué)習(xí)的js方面的書,您的推薦是什么?雖然投票的人不多,但這本書卻是遙遙領(lǐng)先。

          《JavaScript高級(jí)程序設(shè)計(jì)》

          這本書的第一版很全面且不枯燥的書籍,年紀(jì)輕輕的NCZ有這樣的大作難能可貴。讀懂這本書,前端技能又可以上一個(gè)臺(tái)階,基本上可以成為專業(yè)的前端工程師了。

          對(duì)于當(dāng)時(shí)的我來講,這本書及時(shí)的補(bǔ)充了瀏覽器兼容性方面的知識(shí) ,特別是事件相關(guān)的知識(shí),這個(gè)瀏覽器間差別最大。有些內(nèi)容講的非常簡(jiǎn)單明了,比如call和apply的用法,之前總是理解不好,NCZ幾句話+一個(gè)例子就說明白了。

          然而作為全面型的書籍,第一版也是有一些問題的:

          1. 閉包只半頁篇幅,沒說清楚。
          2. 匿名函數(shù)沒怎么講。
          3. 全書沒提到constructor,更別說hasOwnProperty ,__proto__。

          這帶來了我之前說的深一腳淺一腳的困擾,這些知識(shí)基本上是通過《JavaScript權(quán)威指南》閱讀中補(bǔ)充的,當(dāng)然當(dāng)時(shí)版本的權(quán)威指南也有同樣的問題,比如它沒解釋instanceof。也沒提到__proto__。這造成了我對(duì)面向?qū)ο罄斫獾牟蝗妫?dāng)時(shí)在做了N多測(cè)試后,還很蛋疼的寫了一篇博文,面論述之后,果斷刪掉了這篇JY。

          相信這本書的第二版,以及權(quán)威指南的第六版肯定會(huì)在這些方面進(jìn)行補(bǔ)充。不過這兩本書都是十足的大部頭,高級(jí)程序設(shè)計(jì)第二版已經(jīng)比權(quán)威指南去除附錄要厚了。

          一本全面且不枯燥的書太難找了,所以我還是喜歡第一版。對(duì)我技術(shù)上的提升幫助非常之大。忍不住再秀一張圖( 當(dāng)時(shí)在封閉開發(fā)Alimama.com,馬云時(shí)常來,他不肯在書的第一頁簽名搞得好像他寫的,于是把簽名畫在了第二頁。)

          《精通JavaScript》

          我會(huì)把書籍分成兩類,一類是全面型,一類是犀利型。前面介紹了一本全面型的書籍,接下來介紹的這本的特點(diǎn)是非常犀利,這類書籍的特點(diǎn)是作者能找對(duì)重點(diǎn)(2/8原則掌握的很好),在重點(diǎn)位置深入挖掘。這本書的作者John Resig也是jQuery的作者,他顯然是個(gè)足夠犀利的人兒。

          jQuery從未承諾解決所有問題,但再一些重點(diǎn)部位的突破,讓這個(gè)類庫如此流行。這本書并沒有著重介紹jQuery,還是基于原生的JavaScript和DOM API。

          列一些這本書的重點(diǎn)話題 ,能夠很好的看出作者為什么會(huì)開發(fā)出jQuery,或者說,jQuery為什么是現(xiàn)在的樣子:

          1. 如何創(chuàng)建可復(fù)用的代碼?如何調(diào)試 ,測(cè)試?(這是基礎(chǔ))
          2. 如何判斷DOM何時(shí)加載完畢?如何遍歷 ,修改DOM?(jQuery以DOM為核心,節(jié)點(diǎn)的增刪改查,事件響應(yīng)是重點(diǎn))
          3. 如何確定元素的位置,相對(duì)于頁面/屏幕?如何做平滑的動(dòng)畫?(思考下CSS相關(guān)的話題很多,作者為什么選了這兩個(gè)?)
          4. 如何改進(jìn)表單驗(yàn)證,封裝完整的Ajax程序?(涉及數(shù)據(jù)交互,是另一個(gè)重中之重。)

          不算厚的一本書,基本上就是以上的話題+幾個(gè)實(shí)例。當(dāng)我們看過了一本全面型的書籍,對(duì)前端的知識(shí)有了深入的了解之后,這本書的作者指出了今后的重點(diǎn),并告訴大家如何把知識(shí)用到解決重點(diǎn)問題上。

          《JavaScript語言精粹》

          推薦大家看看阮一峰老師的博文《JavaScript誕生記》,JavaScript是Brendan Eich大神10天時(shí)間設(shè)計(jì)出的語言,現(xiàn)在成了Web前端領(lǐng)域的唯一語言。

          一方面,這門語言博采眾家之長(zhǎng),也幫助它維系了長(zhǎng)久的生命力:

          1. 借鑒C語言的基本語法;
          2. 借鑒Java語言的數(shù)據(jù)類型和內(nèi)存管理;
          3. 借鑒Scheme語言,將函數(shù)提升到”第一等公民”(first class)的地位;
          4. 借鑒Self語言,使用基于原型(prototype)的繼承機(jī)制。”

          另一方面,由于設(shè)計(jì)時(shí)間太短,語言的一些細(xì)節(jié)考慮得不夠嚴(yán)謹(jǐn),導(dǎo)致后來很長(zhǎng)一段時(shí)間,Javascript寫出來的程序混亂不堪。Brendan Eich對(duì)其這10天工作的評(píng)價(jià)是:“它的優(yōu)秀之處并非原創(chuàng),它的原創(chuàng)之處并不優(yōu)秀。”

          Douglas Crockford通過《JavaScript: The Good Parts》這本書對(duì)JavaScript進(jìn)行了一次大審判,老道認(rèn)為JavaScript語言有很多優(yōu)秀的地方 ,也有一些雞肋和糟粕。老道不反對(duì)用這門語言,在規(guī)避一些雞肋和糟粕之后它自然是優(yōu)秀的。老道認(rèn)為JavaScript優(yōu)美的特性如下:

          1. 函數(shù)是頭等對(duì)象(可以作為其他函數(shù)的參數(shù)和返回值 ,支持閉包)
          2. 基于原型繼承的動(dòng)態(tài)對(duì)象
          3. 對(duì)象字面量和數(shù)組字面量(構(gòu)成JSON的基礎(chǔ))

          老道列出了很多雞肋和糟粕,并提供了JSLint這個(gè)工具 ,來校驗(yàn)代碼是否使用了不好的部分。書中給出的語法圖,讓我有深入學(xué)習(xí)一下的沖動(dòng) ,也理解了JSLint作為用JS語言分析JS語言的工具成型的理論基礎(chǔ)。

          強(qiáng)烈建議大家使用JSLint來檢測(cè)自己的代碼 ,但是我們不必教條,可以違返其中一些的檢測(cè)規(guī)則,只要我們清楚老道為什么會(huì)設(shè)置這個(gè)規(guī)則,有什么風(fēng)險(xiǎn)?若我們不遵守這個(gè)規(guī)則,是否能回避相應(yīng)的風(fēng)險(xiǎn)。

          我覺得這本書最重要的意義是告訴我們?yōu)槭裁础八请u肋,它是糟粕”。這是經(jīng)過前面的學(xué)習(xí)和大量實(shí)踐之后 ,成熟的開發(fā)者應(yīng)該關(guān)注的。比如:

          1. hasOwnProperty,老道說它糟粕的原因是因?yàn)檫@不是一個(gè)關(guān)鍵字 ,而是一個(gè)Object。prototype上可以被重寫的方法。那么這個(gè)告訴我們 ,并不是不要用hasOwnProperty,而是要注意不要覆蓋它。
          2. eval的主要問題是性能,大量的eval(類eval)語句降低了JS引擎的性能。而經(jīng)過測(cè)試少量的eval語句+eval大段的JS文本性能并不差,有必要也可以考慮使用。

          《JavaScript設(shè)計(jì)模式》

          這是一本介紹JavaScript面向?qū)ο缶幊桃约霸O(shè)計(jì)模式非常好的書籍。相對(duì)于又一本全面型書籍語言精粹,犀利型書籍登場(chǎng)了。我對(duì)面向?qū)ο蟮目捶ㄊ牵弘[藏細(xì)節(jié),方便做大。基于良好的抽象和封裝,我們可以方便的自頂而下的設(shè)計(jì),自底而上的開發(fā)。面向?qū)ο蟮膬?yōu)缺點(diǎn)不是本文的重點(diǎn),這里不討論 ,只能說這是一個(gè)非常不錯(cuò)的代碼設(shè)計(jì)實(shí)現(xiàn)方法論。

          JavaScript到底是不是一個(gè)面向?qū)ο蟮恼Z言,從本質(zhì)說一定是的,從表象來說OO的不那么明顯。我們必須通過一些額外的代碼實(shí)現(xiàn)諸如,劃分公有/私有,接口,繼承,多態(tài)等特性。

          由于JavaScript語言的靈活性,實(shí)現(xiàn)的方式非常多。這本書的第一部分對(duì)常見的兩類實(shí)現(xiàn)模式:類式繼承和原型繼承,都有非常好的最佳實(shí)踐總結(jié)。所以我的想法是完全讀懂它,然后按照這個(gè)來做就好了。如果這里介紹的實(shí)踐足夠強(qiáng)大,我們沒有必要發(fā)明新的繼承實(shí)現(xiàn)模式了,事實(shí)上YUI一直是這種模式,而新的JavaScript引擎甚至引入了Object。create方法,將一些動(dòng)作寫入標(biāo)準(zhǔn)內(nèi)置在JS引擎中。

          我們應(yīng)該將視點(diǎn)放在設(shè)計(jì)模式上,GoF的設(shè)計(jì)模式那本書里的例子,對(duì)于前端開發(fā)來說并不都是很好理解,而這本書的例子全部是前端相關(guān),有助于大家理解設(shè)計(jì)模式的精妙。還有些同學(xué)說,即使我不了解GoF的理論,我也在默默的用這些模式了。確實(shí)是這樣,但我想我們關(guān)注設(shè)計(jì)模式,不光要學(xué)會(huì)各種模式是怎樣的 ,更重要的是學(xué)習(xí)到各種模式適合什么場(chǎng)合,不適合什么場(chǎng)合。了解有什么優(yōu)點(diǎn),也要了解有什么缺點(diǎn),你正在默默使用的模式存在隱患么?系統(tǒng)學(xué)習(xí)之后會(huì)對(duì)其更有把握。

          前幾天聽同事說這本書全面斷貨,不知道是太火,還是印的太少,希望能盡快看到上架。

          Secrets of the JavaScript Ninja

          進(jìn)入第四個(gè)批次,這里的書籍多數(shù)沒有中譯本出版。現(xiàn)階段想開發(fā)靠譜的底層類庫代碼,確實(shí)需要啃一些外文書了。英文書很多,沒有精力大量閱讀,通常讀一些口碑較好的書籍。

          另外,到了這個(gè)批次,我的閱讀量也相當(dāng)?shù)挠邢蓿钥隙ㄓ泻芏嗪玫膬?nèi)容沒有提到,期望大家能繼續(xù)推薦。而且到了這個(gè)批次,書籍產(chǎn)出肯定跟不上知識(shí)的更新速度,跟蹤閱讀一些JS大牛們的Blog應(yīng)該成為習(xí)慣。這是jQuery作者的第二本書,自然優(yōu)勢(shì)犀利型的代表。John Resig已經(jīng)陸續(xù)放出這本書的大部分內(nèi)容,從2008年開始寫,計(jì)劃2012年5月出版。

          如果說JR的第一本書能夠看出為什么有jQuery,那么這本書能看出讓jQuery發(fā)展下去,作者關(guān)注了哪些。我們會(huì)看到其實(shí)一些很細(xì)節(jié)的內(nèi)容,比如強(qiáng)調(diào)測(cè)試用例的構(gòu)建/自動(dòng)化測(cè)試的方法,比如如何利用每個(gè)function實(shí)例的length屬性,比如對(duì)with,eval的思考和發(fā)散等等。

          關(guān)于這本書具體如何的好處,我還理不清,拿來開開眼界是非常不錯(cuò)的。記得玉伯大大組織了一波同學(xué)在翻譯,不知進(jìn)展如何了。

          《JavaScript Patterns》

          乍一看這本書標(biāo)題 ,以為又是一本講設(shè)計(jì)模式的書 ,那和《JavaScript設(shè)計(jì)模式》重復(fù)了,開始沒有仔細(xì)關(guān)注。今年拔赤推薦了它,才發(fā)現(xiàn)者并不僅僅介紹GoF的設(shè)計(jì)模式,而是涵蓋前端開發(fā)各個(gè)方面的先進(jìn)理論。雖然是09年的書,這兩年前端的很多較深刻變化在這邊書里都能看到雛形。上一本書犀利,這本更全面。

          作者Stoyan Stefanov是Yahoo的前端技術(shù)專家,從這本書中可以看到很多YUI3設(shè)計(jì)上的本源,比如在對(duì)象創(chuàng)建模式中介紹的模塊模式/沙箱模式。近來CommonJS Loader的流行在這之上的繼續(xù)深入發(fā)掘。這本書還包括代碼測(cè)試,打包,部署,加載策略等各個(gè)流程中的諸多細(xì)節(jié) ,這些構(gòu)成了完整的體系在Yahoo在YUI3都有非常好的實(shí)踐。

          聽說我們的同事拔赤和一舟在翻譯這個(gè)本書 ,非常期待。

          ECMA-262

          這不是一本書,是俄羅斯小伙子寫的一系列ECMA-262標(biāo)準(zhǔn)分析文章,ECMA-262-3系列已經(jīng)很完整。標(biāo)準(zhǔn)像匯編語言一樣枯燥,而這系列文章把枯燥的標(biāo)準(zhǔn)轉(zhuǎn)化為一系列深入討論的話題 ,配合恰到好處的示例,一定會(huì)讓大家對(duì)JS引擎的認(rèn)識(shí)再上一層。

          網(wǎng)上有一些譯文,但是由于類似文章譯文比較少,很多英文還未達(dá)成一致表述,所以推薦閱讀英原文。另外作者很好,遇到的棘手的問題,去咨詢他都能很快收到很好的回復(fù)。

          期待:一本JavaScript語言作者或引擎實(shí)現(xiàn)者寫的書

          一直以來期待JavaScript能有一本像《C程序設(shè)計(jì)語言》這樣的大作,最近也在讀計(jì)算機(jī)系統(tǒng)概論補(bǔ)一些大學(xué)時(shí)沒學(xué)好的知識(shí),非常認(rèn)同書中”自底而上”的學(xué)習(xí)路線。我想對(duì)JavaScript引擎的透徹分析,能夠減少大家看著實(shí)驗(yàn)結(jié)果,猜測(cè)著寫書的境況。隨著NodeJS的火爆,引擎的技術(shù)分析文章越來越多,期待很快出現(xiàn)集大成者。

          《高性能網(wǎng)站建設(shè)指南》

          《高性能網(wǎng)站建設(shè)進(jìn)階指南》

          《高性能JavaScript》

          進(jìn)入番外篇,推薦的書籍都是有針對(duì)性的領(lǐng)域之作,內(nèi)容往往并不高深,大家根據(jù)自己的實(shí)際情況,進(jìn)行選擇閱讀。

          高性能的網(wǎng)頁是前端必然的追求,Steve Sounders率先在Yahoo開啟了這方面的專題研究,伴隨著《高性能網(wǎng)站建設(shè)指南》的出版和YSlow工具發(fā)布。網(wǎng)站性能優(yōu)化,特別是前端角度和運(yùn)維角度的優(yōu)化方案,進(jìn)入了人們的視野,同時(shí)獲得了巨大的效果,甚至形成了名為WPO(Web Performance Optimization)產(chǎn)業(yè)。

          第一本書除了介紹了能夠立竿見影的規(guī)則,同時(shí)也開啟了民智。大家開始思考如何做優(yōu)化,如何結(jié)合自己的應(yīng)用實(shí)踐做優(yōu)化。而后兩本書基本上是遵循優(yōu)化思路的繼續(xù)得來的實(shí)踐總結(jié)。關(guān)于優(yōu)化的工具、思路、方法是我特別強(qiáng)調(diào)的。感興趣的同學(xué)可以看下在Yslow 34 Rules之后 — 網(wǎng)站性能優(yōu)化思路和進(jìn)展 這一篇。

          其他領(lǐng)域之作

          接下來介紹這些專題類書籍,并不是特別推薦,往往每個(gè)專題都有很多書籍可供選擇,隨手寫一些讀書心得吧。

          • 《Ajax實(shí)戰(zhàn)》:06年的書,很早就購(gòu)入。書中介紹了很多RIA高級(jí)應(yīng)用的相關(guān)話題,很開眼界。
          • 《jQuery實(shí)戰(zhàn)》:一定需要一本介紹jQuery的書,這書還可以,不過現(xiàn)在看來應(yīng)該比較舊了,jQuery已經(jīng)更新了很多。我主要從這本書了解了jQuery的工具函數(shù)擴(kuò)展機(jī)制和插件機(jī)制是如何實(shí)現(xiàn)的。jQuery讓完全不了解prototype屬性的同學(xué),也能寫出可復(fù)用的復(fù)雜組件,非常不容易。以后再單獨(dú)寫寫對(duì)jQuery的一些看法吧。
          • 《精通CSS》:一定需要一本介紹CSS的書,工作中一直以來CSS用的不是很深入,不做特殊介紹。
          • 《正則表達(dá)式必知必會(huì)》:一定需要一本正則方面的書籍,這本小冊(cè)子查起來蠻方便。

          《HTML5揭秘》和《HTML5高級(jí)程序設(shè)計(jì)》買回來一直沒看,對(duì)HTML5的新增特性還是有了解的,等能用到時(shí)再看再評(píng)。

          希望看到NodeJS方面的書籍 ,盡快引入。

          寫在最后

          • 我只能推薦我看過的書對(duì)吧,所以大家懂的。我們不去對(duì)比各種電子產(chǎn)品,就是對(duì)比雞蛋大米,書籍都是非常廉價(jià)的。
          • 當(dāng)有了領(lǐng)域內(nèi)一定的實(shí)踐經(jīng)驗(yàn)之后,閱讀一本相關(guān)的書籍并不是難事,也并不會(huì)耗費(fèi)很多時(shí)間。
          • 全面型的書籍,可以讓大家技能水平一步一步地穩(wěn)步提高,讓大家站得高也站得穩(wěn)。
          • 犀利型的書籍,可以讓大家了解重點(diǎn),了解別人是怎么運(yùn)用那些你也會(huì)的知識(shí)的。
          • 專題類的書籍是拓寬眼界,幫助大家完成工作任務(wù)的好手。
          • 對(duì)于非英文專業(yè)的同學(xué),如果有中譯本,不用非得糾結(jié)著去看原版,我們要最快學(xué)到知識(shí),最快進(jìn)入思考與實(shí)踐。
            感謝大家的閱讀,希望大家可以給個(gè)關(guān)注,點(diǎn)個(gè)贊.

          主站蜘蛛池模板: 国偷自产视频一区二区久| 精品乱子伦一区二区三区高清免费播放| 亚洲一区综合在线播放| 久久久国产精品无码一区二区三区 | 国产精品一区二区香蕉| 少妇无码一区二区二三区| 中文字幕不卡一区| 日本精品一区二区三本中文| 伊人久久一区二区三区无码| 无码人妻精品一区二区三18禁| 日亚毛片免费乱码不卡一区| 韩国女主播一区二区| 久久青青草原一区二区| 国产美女在线一区二区三区| 精品一区二区三区东京热| 亚洲一区二区在线免费观看| 久久精品免费一区二区三区| 国产日韩AV免费无码一区二区| 午夜无码视频一区二区三区| 国产一区二区三区手机在线观看| 无码一区二区三区中文字幕| 无码国产精品一区二区免费I6| 在线精品国产一区二区| 99精品一区二区免费视频 | 亚洲日韩国产一区二区三区在线| 久久精品岛国av一区二区无码| 在线观看国产一区| 日本中文字幕一区二区有码在线| 果冻传媒董小宛一区二区| 日本一区精品久久久久影院| 久久久91精品国产一区二区| 文中字幕一区二区三区视频播放 | 九九无码人妻一区二区三区| 国产一区二区三区影院| 麻豆一区二区在我观看| 亚洲一区精品无码| 人妻天天爽夜夜爽一区二区| 人妻少妇精品视频一区二区三区| 2021国产精品一区二区在线| 一区二区三区在线观看| 男人免费视频一区二区在线观看|