精通JavaScrip開(kāi)發(fā) 版權(quán)信息
- ISBN:9787115402554
- 條形碼:9787115402554 ; 978-7-115-40255-4
- 裝幀:一般膠版紙
- 冊(cè)數(shù):暫無(wú)
- 重量:暫無(wú)
- 所屬分類(lèi):>>
精通JavaScrip開(kāi)發(fā) 本書(shū)特色
本書(shū)是javascript實(shí)戰(zhàn)指南,主要內(nèi)容包括:javascript性能、可靠性、穩(wěn)定性和代碼管理分析,面向?qū)ο蟠a的使用,測(cè)試和錯(cuò)誤處理機(jī)制的構(gòu)建,用amd和requirejs管理代碼依賴(lài),移動(dòng)端、游戲和實(shí)時(shí)通信的javascript開(kāi)發(fā),等等。
精通JavaScrip開(kāi)發(fā) 內(nèi)容簡(jiǎn)介
本書(shū)可以助你學(xué)習(xí)如何使用瀏覽器api、語(yǔ)言特性和工具,來(lái)構(gòu)建大型、結(jié)構(gòu)良好、高質(zhì)量、移動(dòng)優(yōu)化的網(wǎng)站和應(yīng)用程序。通過(guò)本書(shū)易于上手的示例,開(kāi)發(fā)人員能夠:
掌握javascript的性能、可靠性、穩(wěn)定性和代碼可管理性;
理解并編寫(xiě)高效的面向?qū)ο蠛驮痛a,包括充分理解this關(guān)鍵字;
提升javascript代碼性能;
使用常見(jiàn)設(shè)計(jì)模式構(gòu)建大型web應(yīng)用;
編寫(xiě)高質(zhì)量javascript代碼,避開(kāi)容易引發(fā)錯(cuò)誤的陷阱;
運(yùn)用amd和requirejs管理代碼依賴(lài)性;
為移動(dòng)設(shè)備進(jìn)行開(kāi)發(fā),創(chuàng)建游戲,使用現(xiàn)代api(如geolocation、canvas和webrtc)實(shí)現(xiàn)實(shí)時(shí)視頻聊天;
通過(guò)node.js用javascript編寫(xiě)命令行和web服務(wù)器應(yīng)用;
使用構(gòu)建工具(如grunt和gulp)使常規(guī)任務(wù)自動(dòng)化,改進(jìn)開(kāi)發(fā)工作流。
精通JavaScrip開(kāi)發(fā) 目錄
第1章 面向?qū)ο蟮膉avascript 1.1 javascript中的對(duì)象 1.1.1 定制對(duì)象 1.1.2 類(lèi) 1.2 代碼規(guī)范和命名 1.2.1 規(guī)則1:使用描述性的名字 1.2.2 規(guī)則2:以小寫(xiě)字母開(kāi)頭 1.2.3 規(guī)則3:使用駱駝命名法來(lái)分割單詞 1.2.4 規(guī)則4:全局常量使用全大寫(xiě)的名字 1.2.5 規(guī)則5:集中在一個(gè)語(yǔ)句中聲明函數(shù)體的所有變量并將其置于函數(shù)體頂部 1.3 ecmascript 5 1.3.1 json數(shù)據(jù)格式解析 1.3.2 嚴(yán)格模式 1.3.3 函數(shù)綁定 1.3.4 數(shù)組方法 1.3.5 對(duì)象方法 1.4 小結(jié) 第2章 javascript文檔 2.1 行內(nèi)和塊級(jí)注釋 2.2 結(jié)構(gòu)化的javascript文檔 2.3 yuidoc文檔格式 2.3.1 為“類(lèi)”、構(gòu)造器、屬性和方法添加文檔 2.3.2 為事件添加文檔 2.3.3 為代碼示例添加文檔 2.3.4 其他yuidoc文檔標(biāo)簽 2.4 更具表達(dá)性的文檔格式——markdown 2.4.1 用標(biāo)題來(lái)組織內(nèi)容 2.4.2 換行以及創(chuàng)建段落 2.4.3 創(chuàng)建列表 2.4.4 強(qiáng)調(diào)文本 2.4.5 顯示代碼 2.4.6 添加引用 2.4.7 添加url鏈接 2.4.8 插入圖片 2.4.9 生成水平分割線 2.4.10 用反斜杠來(lái)插入保留字符 2.4.11 對(duì)于其他內(nèi)容,可以使用html 2.5 使用yuidoc創(chuàng)建一個(gè)文檔網(wǎng)站 2.6 小結(jié) 第3章 編寫(xiě)高質(zhì)量的javascript 3.1 進(jìn)行靜態(tài)代碼分析 3.1.1 jslint 3.1.2 jshint 3.1.3 google closure compiler和closure linter 3.1.4 選擇一個(gè)靜態(tài)代碼分析工具 3.2 javascript中的單元測(cè)試 3.2.1 javascript的單元測(cè)試框架 3.2.2 使用jasmine來(lái)進(jìn)行javascript單元測(cè)試 3.3 處理運(yùn)行時(shí)錯(cuò)誤 3.3.1 javascript的原生錯(cuò)誤類(lèi)型 3.3.2 將可能出錯(cuò)的代碼放入try-catch語(yǔ)句中 3.3.3 檢測(cè)錯(cuò)誤類(lèi)型 3.3.4 自定義錯(cuò)誤類(lèi)型 3.4 度量代碼質(zhì)量 3.4.1 單元測(cè)試的代碼覆蓋度 3.4.2 度量代碼復(fù)雜度 3.5 小結(jié) 第4章 增強(qiáng)javascript性能 4.1 優(yōu)化頁(yè)面加載時(shí)間 4.1.1 html標(biāo)簽順序 4.1.2 javascript 文件的gzip編碼傳輸 4.1.3 縮編、混淆和編譯 4.1.4 請(qǐng)求時(shí)才延遲加載javascript文件 4.2 優(yōu)化文檔對(duì)象的操作 4.2.1 實(shí)現(xiàn)對(duì)頁(yè)面元素的*小化訪問(wèn) 4.2.2 盡量利用已有元素 4.2.3 離線dom的利用 4.2.4 使用css而非javascript來(lái)操控頁(yè)面樣式 4.3 提升dom事件性能 4.3.1 委托事件至父元素 4.3.2 使用框架化處理頻密發(fā)出的事件 4.4 提升函數(shù)性能 4.5 使用正則表達(dá)式實(shí)現(xiàn)更快速的字符串操作 4.6 更快速地使用數(shù)組 4.6.1 快速創(chuàng)建數(shù)組 4.6.2 快速進(jìn)行數(shù)組循環(huán) 4.7 轉(zhuǎn)移密集型任務(wù)至web worker 4.8 簡(jiǎn)單的性能測(cè)量 4.9 小結(jié) 第5章 設(shè)計(jì)模式:創(chuàng)建型 5.1 什么是設(shè)計(jì)模式 5.2 創(chuàng)建型設(shè)計(jì)模式 5.2.1 工廠模式 5.2.2 抽象工廠模式 5.2.3 生成器模式 5.2.4 原型模式 5.2.5 單例模式 5.3 小結(jié) 第6章 設(shè)計(jì)模式:結(jié)構(gòu)型 6.1 適配器模式 6.2 組合模式 6.3 裝飾模式 6.4 外觀模式 6.5 享元模式 6.6 摻合模式 6.7 模塊模式 6.8 代理模式 6.9 小結(jié) 第7章 設(shè)計(jì)模式:行為型 7.1 職責(zé)鏈模式 7.2 命令模式 7.3 迭代器模式 7.4 觀察者模式 7.5 中介者模式 7.6 備忘錄模式 7.7 承諾模式 7.8 策略模式 7.9 小結(jié) 第8章 設(shè)計(jì)模式:架構(gòu)型 8.1 mvc模式 8.2 mvp模式 8.3 mvvm模式 8.4 架構(gòu)型模式框架 8.5 小結(jié) 第9章 代碼文件依賴(lài)管理 9.1 使用requirejs進(jìn)行代碼文件依賴(lài)管理 9.2 加載、初始化requirejs 9.3 模塊名稱(chēng)的別名 9.4 內(nèi)容分發(fā)網(wǎng)絡(luò)和后備 9.5 建立模塊 9.6 于請(qǐng)求時(shí)才加載額外的腳本 9.7 requirejs代碼優(yōu)化工具 9.8 requirejs的附加插件 9.9 requirejs的代替品 9.10 小結(jié) 第10章 移動(dòng)設(shè)備javascript開(kāi)發(fā) 10.1 移動(dòng)web開(kāi)發(fā)的局限性 10.1.1 電池續(xù)航能力 10.1.2 網(wǎng)絡(luò)帶寬速度與延時(shí) 10.1.3 板載內(nèi)存容量 10.1.4 操作系統(tǒng)響應(yīng)能力 10.2 通過(guò)javascript訪問(wèn)移動(dòng)設(shè)備上的傳感器 10.2.1 訪問(wèn)地理位置定位傳感器 10.2.2 訪問(wèn)觸摸傳感器 10.2.3 訪問(wèn)姿態(tài)傳感器和方向傳感器 10.2.4 訪問(wèn)運(yùn)動(dòng)傳感器 10.2.5 未能訪問(wèn)的傳感器 10.2.6 事件框架化與傳感器數(shù)據(jù) 10.2.7 利用傳感器數(shù)據(jù)進(jìn)一步發(fā)揮 10.3 網(wǎng)絡(luò)連接故障與離線狀態(tài) 10.3.1 在線與離線狀態(tài)的檢測(cè) 10.3.2 利用web storage api長(zhǎng)期保存數(shù)據(jù) 10.3.3 html5 application cache 10.4 響應(yīng)式(自適應(yīng))網(wǎng)頁(yè)設(shè)計(jì)的javascript 10.5 小結(jié) 第11章 使用canvasapi創(chuàng)建游戲 11.1 在canvas中的基本繪圖操作 11.2 高清canvas元素 11.3 使用canvas 制作游戲 11.3.1 在canvas 上繪制圖像 11.3.2 canvas 中的動(dòng)畫(huà) 11.3.3 游戲的控制 11.3.4 碰撞檢測(cè) 11.3.5 游戲主循環(huán) 11.3.6 分層canvas以提高性能 11.4 在canvas 中制作frogger游戲 11.5 小結(jié) 第12章 使用webrtc實(shí)現(xiàn)視頻聊天 12.1 webrtc規(guī)范 12.2 訪問(wèn)網(wǎng)絡(luò)攝像頭和麥克風(fēng) 12.3 建立一個(gè)簡(jiǎn)單的視頻聊天網(wǎng)頁(yè)應(yīng)用程序 12.4 創(chuàng)建視頻聊天客戶(hù)端 12.5 小結(jié) 第13章 客戶(hù)端模板引擎的使用 13.1 動(dòng)態(tài)更新頁(yè)面內(nèi)容 13.2 通過(guò)ajax動(dòng)態(tài)加載html 13.3 在客戶(hù)端應(yīng)用模板 13.3.1 不依賴(lài)庫(kù)實(shí)現(xiàn)客戶(hù)端模板 13.3.2 使用mustache.js模板引擎實(shí)現(xiàn)客戶(hù)端模板 13.3.3 使用handlebars.js引擎實(shí)現(xiàn)客戶(hù)端模板 13.3.4 作為替換的其他客戶(hù)端模板引擎庫(kù) 13.4 考慮漸進(jìn)增強(qiáng) 13.5 小結(jié) 第14章 node.js應(yīng)用平臺(tái) 14.1 node.js安裝 14.2 編寫(xiě)node.js應(yīng)用程序 14.2.1 console對(duì)象 14.2.2 加載模塊 14.3 node.js軟件包 14.4 劃分node.js應(yīng)用程序分布至多個(gè)文件 14.5 用于網(wǎng)頁(yè)應(yīng)用程序的node.js框架 14.5.1 express框架 14.5.2 socket.io 14.6 node.js應(yīng)用程序的托管 14.7 小結(jié) 第15章 構(gòu)建工具及自動(dòng)化 15.1 構(gòu)建工具 15.1.1 grunt——javascript任務(wù)運(yùn)行器 15.1.2 gulp.js——“流式”構(gòu)建系統(tǒng) 15.1.3 使用構(gòu)建工具來(lái)使常規(guī)任務(wù)實(shí)現(xiàn)自動(dòng)化 15.2 第三方庫(kù)和框
展開(kāi)全部
精通JavaScrip開(kāi)發(fā) 相關(guān)資料
“這是一本很棒的書(shū)。關(guān)于面向?qū)ο骿avascript和如何應(yīng)用設(shè)計(jì)模式(創(chuàng)建型、結(jié)構(gòu)型和行為型等)的章節(jié)讓這本書(shū)物有所值。作者在編程中運(yùn)用了實(shí)踐,讓javascript變得妙趣橫生。如果你已經(jīng)對(duì)javascript有所了解,想要在此方面有所提升,那么我強(qiáng)烈推薦你閱讀這本書(shū)。”
——kofi addaquay,跨國(guó)交互設(shè)計(jì)公司scripton cto
精通JavaScrip開(kāi)發(fā) 作者簡(jiǎn)介
Den Odell 前端開(kāi)發(fā)工程師,具有豐富的HTML、CSS和JavaScript編程經(jīng)驗(yàn),Web標(biāo)準(zhǔn)和可用性的積極推動(dòng)者。作為數(shù)字服務(wù)機(jī)構(gòu)AKQA的Web開(kāi)發(fā)主管和前端技術(shù)架構(gòu)師,他曾為法拉利、耐克和諾基亞等公司開(kāi)發(fā)網(wǎng)站和富Internet應(yīng)用。