注冊(cè) | 登錄讀書(shū)好,好讀書(shū),讀好書(shū)!
讀書(shū)網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書(shū)科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計(jì)Electron實(shí)戰(zhàn):入門(mén)、進(jìn)階與性能優(yōu)化

Electron實(shí)戰(zhàn):入門(mén)、進(jìn)階與性能優(yōu)化

Electron實(shí)戰(zhàn):入門(mén)、進(jìn)階與性能優(yōu)化

定 價(jià):¥79.00

作 者: 劉曉倫 著
出版社: 機(jī)械工業(yè)出版社
叢編項(xiàng):
標(biāo) 簽: 暫缺

購(gòu)買(mǎi)這本書(shū)可以去


ISBN: 9787111653745 出版時(shí)間: 2020-06-01 包裝: 平裝
開(kāi)本: 16開(kāi) 頁(yè)數(shù): 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  本書(shū)以實(shí)戰(zhàn)為導(dǎo)向,講解了如何用Electron結(jié)合現(xiàn)代前端技術(shù)來(lái)開(kāi)發(fā)桌面應(yīng)用。不僅全面介紹了Electron入門(mén)需要掌握的功能和原理,而且還針對(duì)Electron開(kāi)發(fā)中的重點(diǎn)和難點(diǎn)進(jìn)行了重點(diǎn)講解,旨在幫助讀者實(shí)現(xiàn)快速進(jìn)階。作者是Electron領(lǐng)域的早期實(shí)踐者,項(xiàng)目經(jīng)驗(yàn)非常豐富,本書(shū)內(nèi)容得到了來(lái)自阿里等大企業(yè)的一線(xiàn)專(zhuān)家的高度評(píng)價(jià)。 本書(shū)遵循漸進(jìn)式的原則逐步傳遞知識(shí)給讀者,書(shū)中以Electron知識(shí)為主線(xiàn)并對(duì)現(xiàn)代前端知識(shí)進(jìn)行了有序的整合,對(duì)易發(fā)問(wèn)題從深層原理的角度進(jìn)行講解,對(duì)普適需求以實(shí)踐的方式進(jìn)行講解,同時(shí)還介紹了Electron生態(tài)內(nèi)的大量?jī)?yōu)秀組件和項(xiàng)目。 全書(shū)一共14章: ●第1章講解Electron因何而來(lái),Electron的生態(tài)、優(yōu)勢(shì)和不足,以及Electron未來(lái)的競(jìng)爭(zhēng)者PWA技術(shù); ●第2章帶領(lǐng)讀者新建了一個(gè)簡(jiǎn)單的Electron項(xiàng)目,同時(shí)為讀者介紹了一些Electron的基礎(chǔ)知識(shí); ●第3章講解了主進(jìn)程和渲染進(jìn)程的相關(guān)內(nèi)容; ●第4章介紹了如何把現(xiàn)代前端框架引入Electron項(xiàng)目中,集中介紹了webpack、Angular、React和Vue等框架; ●第5~13章依次詳細(xì)講解了界面、數(shù)據(jù)持久化、操作系統(tǒng)API訪(fǎng)問(wèn)、硬件設(shè)備訪(fǎng)問(wèn)、測(cè)試、調(diào)試、安全、發(fā)布等技術(shù)及其背后的原理; ●第14章通過(guò)一個(gè)完整的工程項(xiàng)目串聯(lián)了Electron的核心技術(shù)并展示了Electron項(xiàng)目開(kāi)發(fā)的完整流程。

作者簡(jiǎn)介

  劉曉倫 資深技術(shù)專(zhuān)家,有十余年研發(fā)經(jīng)驗(yàn),是Electron及其相關(guān)技術(shù)在企業(yè)應(yīng)用領(lǐng)域的早期實(shí)踐者,GitHub/Gitee優(yōu)秀開(kāi)源項(xiàng)目作者。作者還為Electron項(xiàng)目提交過(guò)數(shù)個(gè)Issue和Pull Request,均被官方接納。 曾任原遠(yuǎn)傳研發(fā)中心負(fù)責(zé)人、小遠(yuǎn)機(jī)器人研發(fā)總監(jiān)?,F(xiàn)在擔(dān)任一家創(chuàng)業(yè)公司的技術(shù)負(fù)責(zé)人,負(fù)責(zé)的產(chǎn)品以Electron為主要技術(shù)方向。 除此之外,作者還有著十余年的前端及C++(Qt)的開(kāi)發(fā)經(jīng)驗(yàn),深入研究過(guò)Chromium的源碼及相關(guān)的協(xié)議(DevTools Protocol和V8 Debugger Protocol),其主導(dǎo)研發(fā)的產(chǎn)品為數(shù)家世界五百?gòu)?qiáng)企業(yè)提供服務(wù)。

圖書(shū)目錄

●第1章 認(rèn)識(shí)Electron 1
1.1 Electron的由來(lái) 1
1.2 基于Electron的應(yīng)用 4
1.3 Electron的生態(tài) 5
1.4 Electron的優(yōu)勢(shì) 5
1.5 Electron的不足 6
1.6 未來(lái)的競(jìng)爭(zhēng)者PWA 7
1.7 本章小結(jié) 9

●第2章 輕松入門(mén) 10
2.1 搭建開(kāi)發(fā)環(huán)境 10
2.2 創(chuàng)建窗口界面 13
2.3 啟動(dòng)窗口 14
2.4 引用JavaScript 16
2.5 Electron API演示工具 19
2.6 試驗(yàn)工具Electron Fiddle 20
2.7 本章小結(jié) 22

●第3章 主進(jìn)程和渲染進(jìn)程 23
3.1 區(qū)分主進(jìn)程與渲染進(jìn)程 23
3.2 進(jìn)程調(diào)試 25
3.2.1 調(diào)試主進(jìn)程 25
3.2.2 調(diào)試渲染進(jìn)程 27
3.3 進(jìn)程互訪(fǎng) 29
3.3.1 渲染進(jìn)程訪(fǎng)問(wèn)主進(jìn)程對(duì)象 29
3.3.2 渲染進(jìn)程訪(fǎng)問(wèn)主進(jìn)程類(lèi)型 30
3.3.3 渲染進(jìn)程訪(fǎng)問(wèn)主進(jìn)程自定義內(nèi)容 31
3.3.4 主進(jìn)程訪(fǎng)問(wèn)渲染進(jìn)程對(duì)象 32
3.4 進(jìn)程間消息傳遞 32
3.4.1 渲染進(jìn)程向主進(jìn)程發(fā)送消息 32
3.4.2 主進(jìn)程向渲染進(jìn)程發(fā)送消息 34
3.4.3 渲染進(jìn)程之間消息傳遞 36
3.5 remote模塊的局限性 36
3.6 本章小結(jié) 38

●第4章 引入現(xiàn)代前端框架 39
4.1 引入webpack 39
4.1.1 認(rèn)識(shí)webpack 39
4.1.2 配置webpack 40
4.1.3 主進(jìn)程入口程序 42
4.1.4 渲染進(jìn)程入口程序 43
4.1.5 自定義入口頁(yè)面 45
4.1.6 使用jQuery 46
4.2 引入Angular 46
4.2.1 認(rèn)識(shí)Angular 46
4.2.2 環(huán)境搭建 47
4.2.3 項(xiàng)目結(jié)構(gòu) 48
4.3 引入React 48
4.3.1 認(rèn)識(shí)React 48
4.3.2 環(huán)境搭建 49
4.3.3 項(xiàng)目結(jié)構(gòu) 50
4.3.4 項(xiàng)目引薦 50
4.4 引入Vue 50
4.4.1 認(rèn)識(shí)Vue 50
4.4.2 環(huán)境搭建 51
4.4.3 項(xiàng)目結(jié)構(gòu) 52
4.4.4 調(diào)試配置 53
4.5 本章小結(jié) 55

●第5章 窗口 56
5.1 窗口的常用屬性及應(yīng)用場(chǎng)景 56
5.2 窗口標(biāo)題欄和邊框 58
5.2.1 自定義窗口的標(biāo)題欄 58
5.2.2 窗口的控制按鈕 62
5.2.3 窗口最大化狀態(tài)控制 63
5.2.4 防抖與限流 65
5.2.5 記錄與恢復(fù)窗口狀態(tài) 67
5.2.6 適時(shí)地顯示窗口 68
5.3 不規(guī)則窗口 69
5.3.1 創(chuàng)建不規(guī)則窗口 69
5.3.2 點(diǎn)擊穿透透明區(qū)域 71
5.4 窗口控制 72
5.4.1 阻止窗口關(guān)閉 72
5.4.2 多窗口競(jìng)爭(zhēng)資源 74
5.4.3 模態(tài)窗口與父子窗口 75
5.4.4 Mac系統(tǒng)下的關(guān)注點(diǎn) 76
5.5 本章小結(jié) 78

●第6章 界面 79
6.1 頁(yè)面內(nèi)容 79
6.1.1 獲取webContents實(shí)例 79
6.1.2 頁(yè)面加載事件及觸發(fā)順序 81
6.1.3 頁(yè)面跳轉(zhuǎn)事件 82
6.1.4 單頁(yè)應(yīng)用中的頁(yè)內(nèi)跳轉(zhuǎn) 83
6.1.5 頁(yè)面縮放 84
6.1.6 渲染海量數(shù)據(jù)元素 85
6.2 頁(yè)面容器 88
6.2.1 webFrame 88
6.2.2 webview 90
6.2.3 BrowserView 91
6.3 腳本注入 93
6.3.1 通過(guò)preload參數(shù)注入腳本 93
6.3.2 通過(guò)executeJavaScript注入腳本 97
6.3.3 禁用窗口的beforeunload事件 99
6.4 頁(yè)面動(dòng)效 100
6.4.1 使用CSS控制動(dòng)畫(huà) 100
6.4.2 使用JavaScript控制動(dòng)畫(huà) 101
6.5 本章小結(jié) 102

●第7章 數(shù)據(jù) 103
7.1 使用本地文件持久化數(shù)據(jù) 103
7.1.1 用戶(hù)數(shù)據(jù)目錄 103
7.1.2 讀寫(xiě)本地文件 105
7.1.3 值得推薦的第三方庫(kù) 106
7.2 使用瀏覽器技術(shù)持久化數(shù)據(jù) 107
7.2.1 瀏覽器數(shù)據(jù)存儲(chǔ)技術(shù)對(duì)比 107
7.2.2 使用第三方庫(kù)訪(fǎng)問(wèn)IndexedDB 108
7.2.3 讀寫(xiě)受限訪(fǎng)問(wèn)的Cookie 110
7.2.4 清空瀏覽器緩存 112
7.3 使用SQLite持久化數(shù)據(jù) 112
7.4 本章小結(jié) 115

●第8章 系統(tǒng) 116
8.1 系統(tǒng)對(duì)話(huà)框 116
8.1.1 使用系統(tǒng)文件對(duì)話(huà)框 116
8.1.2 關(guān)于對(duì)話(huà)框 118
8.2 菜單 119
8.2.1 窗口菜單 119
8.2.2 HTML右鍵菜單 121
8.2.3 系統(tǒng)右鍵菜單 124
8.2.4 自定義系統(tǒng)右鍵菜單 125
8.3 快捷鍵 126
8.3.1 監(jiān)聽(tīng)網(wǎng)頁(yè)按鍵事件 126
8.3.2 監(jiān)聽(tīng)全局按鍵事件 126
8.4 托盤(pán)圖標(biāo) 127
8.4.1 托盤(pán)圖標(biāo)閃爍 127
8.4.2 托盤(pán)圖標(biāo)菜單 128
8.5 剪切板 129
8.5.1 把圖片寫(xiě)入剪切板 129
8.5.2 讀取并顯示剪切板里的圖片 130
8.6 系統(tǒng)通知 131
8.6.1 使用HTML API發(fā)送系統(tǒng)通知 131
8.6.2 主進(jìn)程內(nèi)發(fā)送系統(tǒng)通知 132
8.7 其他 133
8.7.1 使用系統(tǒng)默認(rèn)應(yīng)用打開(kāi)文件 133
8.7.2 接收拖拽到窗口中的文件 134
8.7.3 使用系統(tǒng)字體 135
8.7.4 最近打開(kāi)的文件 137
8.8 本章小結(jié) 138

●第9章 通信 139
9.1 與Web服務(wù)器通信 139
9.1.1 禁用同源策略以實(shí)現(xiàn)跨域 139
9.1.2 Node.js訪(fǎng)問(wèn)HTTP服務(wù)的不足 141
9.1.3 使用WebSocket通信 142
9.1.4 截獲并修改網(wǎng)絡(luò)請(qǐng)求 144
9.2 與系統(tǒng)內(nèi)其他應(yīng)用通信 146
9.2.1 Electron應(yīng)用與其他應(yīng)用通信 146
9.2.2 網(wǎng)頁(yè)與Electron應(yīng)用通信 148
9.3 自定義協(xié)議(protocol) 150
9.4 使用socks5代理 152
9.5 本章小結(jié) 153

●第10章 硬件 154
10.1 屏幕 154
10.1.1 獲取擴(kuò)展屏幕 154
10.1.2 在自助服務(wù)機(jī)中使用Electron 156
10.2 音視頻設(shè)備 158
10.2.1 使用攝像頭和麥克風(fēng) 158
10.2.2 錄屏 159
10.3 電源 160
10.3.1 電源的基本狀態(tài)和事件 160
10.3.2 監(jiān)控系統(tǒng)掛起與鎖屏事件 161
10.3.3 阻止系統(tǒng)鎖屏 162
10.4 打印機(jī) 162
10.4.1 控制打印行為 162
10.4.2 導(dǎo)出PDF 164
10.5 硬件信息 165
10.5.1 獲取目標(biāo)平臺(tái)硬件信息 165
10.5.2 使用硬件串號(hào)控制應(yīng)用分發(fā) 166
10.6 本章小結(jié) 170

●第11章 調(diào)測(cè) 171
11.1 測(cè)試 171
11.2 調(diào)試 177
11.3 日志 188
11.4 本章小結(jié) 193

●第12章 安全 194
12.1 保護(hù)源碼 195
12.2 保護(hù)客戶(hù) 204
12.3 保護(hù)網(wǎng)絡(luò) 206
12.4 保護(hù)數(shù)據(jù) 211
12.5 提升穩(wěn)定性 214

12.6 本章小結(jié) 216

●第13章 發(fā)布 218
13.1 生成圖標(biāo) 218
13.2 生成安裝包 219
13.3 代碼簽名 221
13.4 自動(dòng)升級(jí) 222
13.5 本章小結(jié) 224

●第14章 實(shí)戰(zhàn):自媒體內(nèi)容發(fā)布工具 225
14.1 項(xiàng)目需求 225
14.2 項(xiàng)目架構(gòu) 226
14.3 核心剖析 229
14.4 輔助功能 237
14.5 本章小結(jié) 240
附錄A Mac代碼簽名 242

本目錄推薦

掃描二維碼
Copyright ? 讀書(shū)網(wǎng) m.ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)