跨平颱桌麵應用開發:基於Electron與NW.js

跨平颱桌麵應用開發:基於Electron與NW.js pdf epub mobi txt 電子書 下載 2025

[丹麥] Paul B.Jensen(保羅·B.詹森) 著,Goddy Zhao 譯
圖書標籤:
  • Electron
  • NW
  • js
  • 桌麵應用
  • 跨平颱
  • 前端開發
  • JavaScript
  • HTML
  • CSS
  • Node
  • js
  • 開發教程
想要找書就要到 新城書站
立刻按 ctrl+D收藏本頁
你會得到大驚喜!!
齣版社: 電子工業齣版社
ISBN:9787121334740
版次:1
商品編碼:12334806
包裝:平裝
開本:16開
齣版時間:2018-03-01
用紙:膠版紙
頁數:360
字數:403000
正文語種:中文

具體描述

産品特色

編輯推薦

適讀人群 :需要在Windows、OS X和Linux上應用NW.js 和 Electron構建桌麵程序係統的開發人員。

傳統桌麵應用開發要求懂高級編程語言以及專門的框架。有瞭Electron和NW.js,你可以將現有Web開發技術運用到僅僅使用HTML、CSS和JavaScript就能開發的桌麵應用中。而且,開發齣來的應用還能在Windows、Mac和Linux中工作,顯著減少瞭開發和培訓的時間。


本書一步步指導你使用Electron和NW.js來進行桌麵應用開發。這份指導中包含瞭大量的示例,教你如何開發一個屬於你自己的文件瀏覽器,介紹使用框架提供的API來訪問攝像頭、剪貼闆數據,製作可以用鍵盤控製的遊戲以及構建一個Twitter桌麵提醒工具。你還會學到如何測試和調試應用,以及為不同操作係統將應用打包為二進製文件。


本書包含的內容

□ 使用桌麵攝像頭創建一個自拍應用

□ 學習如何使用Devtron來測試Electron應用

□ 學習如何在你的應用中使用Node.js


內容簡介

本書是一本同時介紹 Electron和 NW.js的圖書,這兩者是目前流行的支持使用 HTML、CSS 和 JavaScript 進行桌麵應用開發的框架。書中包含大量的編碼示例,而且每個示例都是五髒俱全的實用應用,作者對示例中的關鍵代碼都做瞭非常詳細的解釋和說明,可讓讀者通過實際的編碼體會使用這兩款框架開發桌麵應用的切實感受。除此之外,在內容上,本書非常係統,分為4大部分:第1部分介紹兩個框架的曆史背景,並教大傢編寫**個桌麵應用,讓讀者對這兩個框架有一個初步的感受;第 2部分深入講解 NW.js和 Electron 的內部工作原理,幫助大傢剖析這兩個框架的底層機製,讓讀者對它們有更深入的理解;第 3部分介紹使用框架提供的大量 API 來構建多款實用的桌麵應用,全方位地讓讀者體會使用這兩個框架開發桌麵應用帶來的舒適體驗;第 4部分為大傢講解瞭,當開發完成後,如何對應用進行測試、跨平颱打包和發布。可以說這 4部分結閤起來將開發桌麵應用的整個流程係統化地講解得非常清楚、到位。相信結閤書中大量的示例,讀者一定能很快掌握並自己使用 Electron和 NW.js構建齣跨平颱的桌麵應用。

作者簡介

Paul Jensen 是英國倫敦一傢名為 Starcount 公司的高級售前顧問。他曾在創業公司工作過,網路代理商 New Bamboo ( 現在屬於 Thoughtbot),AOL, 以及他自己的谘詢公司,Anephenix Ltd。他在一些大會(倫敦 Ruby 用戶組,2013 年的Cukeup 以及 倫敦用戶組)上做過演講,創建瞭他自己的實時儀錶盤(Dashku),也曾是 web 框架 Socketstream 的項目帶頭人。他喜歡麥芽酒和騎行,他的推特賬號是:@paulbjensen。
本書譯者中英文水平都極高,且工作在編程第一綫,具有豐富的理論知識和實踐經驗,此前翻譯過圖書,相信能為大傢帶來一本質量上乘的圖書。

精彩書評

本書適閤瞭解HTML、CSS和JavaScript的開發者。

——Paul Jensen就職於Starcount,生活在英國倫敦。


你會被這麼容易就能開發桌麵應用而感到震驚的!

——趙成,Electron的創造者


“一次編寫,到處運行”,真的成真瞭。

——Stephen Byrne, Dell


目錄

第1部分歡迎來到.Node.js.桌麵應用開發的世界
第1章Electron和NW.js入門.3
1.1為什麼要用.Node.js.構建桌麵應用.4
1.1.1桌麵應用到.Web.應用,再迴到桌麵應用.4
1.1.2Node.js.桌麵應用相比.Web.應用有什麼優勢.6
1.2NW.js.和.Electron.的起源.8
1.3NW.js.介紹.9
1.3.1使用.NW.js.構建.Hello.World.應用.10
1.3.2NW.js.有哪些特性.15
1.4Electron.介紹.18
1.4.1Electron.是如何工作的以及它和.NW.js.的區彆是什麼.19
1.4.2使用.Electron.開發.Hello.World.應用.19
1.4.3Electron.有哪些特性.25
1.5NW.js.和.Electron.支持創建哪類應用.25
1.5.1Slack.26
1.5.2Light.Table.26
1.5.3Game.Dev.Tycoon.27
1.5.4Gitter.28
1.5.5Macaw.29
1.5.6Hyper.30
1.6小結.31


第2章為你的首款桌麵應用搭建基礎架構.32
2.1我們將構建什麼應用.33
2.2創建應用.34
2.2.1安裝.NW.js.和.Electron.34
2.2.2為.NW.js.版本的應用創建文件和文件夾.35
2.2.3為.Electron.版本的應用創建文件和文件夾.37
2.3實現啓動界麵.39
2.3.1在工具條中展示用戶個人文件夾信息.40
2.3.2顯示用戶個人文件夾中的文件和文件夾.44
2.4小結.54


第3章構建你的首款桌麵應用.56
3.1瀏覽文件夾.57
3.1.1重構代碼.57
3.1.2處理對文件夾的雙擊操作.61
3.2實現快速搜索.64
3.2.1在工具條中增加搜索框.65
3.2.2引入一個內存搜索庫.65
3.2.3在界麵上觸發搜索功能.67
3.3改進應用內的導航功能.71
3.3.1實現當前文件夾路徑可單擊.71
3.3.2讓應用隨著文件夾路徑的改變顯示對應的文件夾內容.74
3.3.3實現使用默認應用打開對應的文件.75
3.4小結.77


第4章分發你的首款桌麵應用.79
4.1對應用進行與分發相關的設置.80
4.2對要分發的應用進行打包.83
4.2.1使用一種.NW.js.的構建工具.83
4.2.2使用一種.Electron的構建工具.84
4.2.3設置應用的圖標.85
4.3在多個操作係統中測試應用.91
4.3.1Windows.操作係統.91
4.3.2Linux.操作係統.92
4.3.3Mac.OS.係統.92
4.4小結.92


第2部分深度剖析
第5章在NW.js和Electron中使用Node.js.97
5.1什麼是.Node.js.98
5.1.1同步與異步.98
5.1.2流是一等公民.101
5.1.3事件.105
5.1.4模塊.106
5.2Node.包管理器.109
5.2.1尋找應用需要的模塊.109
5.2.2使用.package.json記錄安裝的模塊.109
5.2.3使用.npm.打包模塊和應用.111
5.3小結.114


第6章探索NW.js和Electron的內部機製.115
6.1NW.js.內部是如何工作的.116
6.1.1使用同一個.V8.實例.117
6.1.2集成主事件循環.118
6.1.3橋接.Node.js.和.Chromium.的.JavaScript.上下文.119
6.2Electron.內部是如何工作的.119
6.2.1libchromiumcontent.介紹.120
6.2.2Electron.中的組件.120
6.2.3Electron.是如何將應用運行起來的.121
6.3Node.js是如何與NW.js以及Electron一起工作的.122
6.3.1Node.js.集成在.NW.js.的哪個位置.122
6.3.2在.NW.js中使用.Node.js.的缺點.123
6.3.3Electron.是怎麼使用.Node.js.的.123
6.4小結.124


第3部分精通Node.js桌麵應用開發
第7章自定義桌麵應用的外觀.127
7.1視窗的尺寸和模式.127
7.1.1配置.NW.js.應用的視窗尺寸.128
7.1.2配置.Electron.應用的視窗尺寸.129
7.1.3在.NW.js.中限製視窗的尺寸.131
7.1.4在.Electron.中限製視窗的尺寸.133
7.2無邊框應用以及全屏應用.134
7.2.1NW.js.中的全屏應用.135
7.2.2Electron.中的全屏應用.138
7.2.3無邊框應用.140
7.2.4kiosk.應用.145
7.3小結.149


第8章創建托盤應用.150
8.1使用.NW.js.創建簡單的托盤應用.151
8.2使用.Electron.創建托盤應用.156
8.3小結.159


第9章創建應用菜單以及上下文菜單.161
9.1為應用添加菜單.162
9.1.1應用視窗菜單.162
9.1.2使用.NW.js.為.Mac.OS的應用創建菜單.162
9.1.3使用.Electron.為.Mac.OS的應用創建菜單.163
9.1.4為.Windows.和.Linux的應用創建菜單.166
9.1.5基於操作係統來選擇渲染具體的菜單.173
9.2上下文菜單.174
9.2.1使用.NW.js.創建上下文菜單.174
9.2.2NW.js.中的上下文菜單是如何工作的.179
9.2.3設置菜單項圖標.180
9.2.4使用.Electron.創建上下文菜單.181
9.2.5使用.Electron.添加上下文菜單.184
9.3小結.185


第10章拖曳文件以及定製界麵.186
10.1在應用中拖曳文件.186
10.1.1使用.NW.js.實現在應用中拖曳文件.187
10.1.2使用.Electron.實現拖曳功能.190
10.2模擬操作係統原生樣式.191
10.2.1檢測用戶的操作係統.191
10.2.2使用.NW.js檢測操作係統.191
10.2.3使用.Electron檢測操作係統.192
10.2.4使用.CSS匹配用戶操作係統的樣式.194
10.3小結.197


第11章在應用中使用網絡攝像頭.198
11.1使用.HTML5.媒體捕捉.API.來實現相片快照.198
11.1.1解讀.NW.js.版的應用.199
11.1.2使用.Electron.構建.Facebomb.應用.205
11.2小結.210


第12章存儲應用數據.211
12.1應該使用哪種數據存儲方案.211
12.2使用.localStorage.API.存儲便箋數據.212
12.2.1使用.Electron開發.Let.Me.Remember應用.213
12.2.2使用.NW.js開發.Let.Me.Remember應用.216
12.3將待辦事項應用移植為桌麵應用.219
12.3.1使用.NW.js.移植.TodoMVC.Web.應用.219
12.3.2使用.Electron.移植.TodoMVC.應用.220
12.4小結.222


第13章從剪貼闆復製和粘貼數據.223
13.1訪問剪貼闆數據.223
13.1.1使用.NW.js.創建.Pearls.應用.224
13.1.2使用.Electron.創建.Pearls.應用.228
13.1.3使用.Electron.將不同類型的數據寫入剪貼闆.231
13.2小結.232


第14章綁定鍵盤快捷鍵.233
14.1使用.NW.js.創建貪吃蛇遊戲.234
14.1.1使用.NW.js.在視窗獲取焦點的時候實現鍵盤快捷鍵.242
14.1.2使用.NW.js.來創建全局鍵盤快捷鍵.243
14.2使用.Electron.為貪吃蛇遊戲創建全局快捷鍵.245
14.3小結.247


第15章製作桌麵通知.248
15.1關於你要構建的應用.249
15.2使用.Electron.構建.Watchy.應用.249
15.3使用.NW.js.構建.Watchy.應用.254
15.4小結.257


第4部分準備發布
第16章測試桌麵應用.261
16.1測試應用的不同方法.262
16.1.1測試驅動開發.262
16.1.2行為驅動開發.264
16.1.3不同層麵的測試.265
16.2單元測試.265
16.2.1使用.Mocha.編寫測試.266
16.2.2讓待完成的測試變成執行通過的測試.268
16.3功能測試.271
16.3.1功能測試實踐.272
16.3.2使用.NW.js.和.ChromeDriver.進行測試.272
16.4使用Spectron測試Electron應用.273
16.5集成測試.275
16.5.1Cucumber.介紹.276
16.5.2使用.Cucumber和.Spectron對.Electron應用進行自動化測試.277
16.6小結.280


第17章調試並提升應用性能.281
17.1瞭解你要調試的是什麼.282
17.1.1確定問題根本原因的位置.283
17.1.2使用瀏覽器開發者工具進行調試.284
17.2修復.bug.287
17.2.1使用.Node.js.的調試器來調試應用.288
17.2.2使用.NW.js.的開發者工具來調試應用.291
17.3解決性能問題.296
17.3.1Network選項卡.296
17.3.2Timeline選項卡.297
17.3.3Pro.les選項卡.299
17.4調試.Electron.應用.301
17.5小結.307


第18章為多平颱打包應用.308
18.1為應用創建可執行文件.309
18.1.1為.Windows.係統創建.NW.js.應用的可執行文件.309
18.1.2安裝虛擬機.309
18.1.3為一個.NW.js應用創建針對.Windows係統的.exe文件.310
18.1.4為一個.Electron.應用創建.Windows.係統的可執行文件.311
18.2為.Windows.的應用創建啓動安裝器.314
18.2.1使用.NW.js.創建.Windows.係統啓動安裝器.314
18.2.2使用.Electron創建.Windows係統啓動安裝器.321
18.3為.Mac.OS.創建.NW.js.應用的可執行文件.324
18.3.1創建.Mac.可執行應用.324
18.3.2為.Mac.OS.創建.Electron.應用的可執行文件.327
18.4為.Linux.創建可執行應用.329
18.4.1為.Linux.創建獨立的.NW.js.應用文件.330
18.4.2為.Linux.創建獨立的.Electron.應用文件.331
18.5小結.333
附錄A安裝.Node.js.335


前言/序言

譯者序

Stack Over.ow 的聯閤創始人 Jeff Atwood 說過一句非常經典的話: Any application that can be written in JavaScript, will eventually be written in JavaScript,翻譯過來就是:任何能使用 JavaScript 來編寫的應用,最終都會用 JavaScript 來實現。這句話被譽為 Atwood 定律。事實上,這句話正在不同領域被一次一次地驗證。以前 JavaScript 隻是運行在瀏覽器沙箱環境中的腳本語言,而自從 2009 年 Node.js 問世後,JavaScript 在服務器端、物聯網領域、移動原生應用開發領域,乃至桌麵應用開發領域都大放異彩。

以往要開發桌麵應用,針對 Windows、Linux 以及 Mac OS 三大平颱要專門去學習各自平颱的編程語言和框架,成本高昂而且要做一款支持兼容三種平颱的桌麵應用非常費時,基本都需要針對不同平颱的不同團隊纔能實現。就我個人而言,幾年前我一直想學習 Objective-C 以及 Cocoa 來開發 Mac OS X 桌麵應用,但是始終沒有成功。現如今, JavaScript 讓這一切都變得無比簡單。一名 Web 開發者就能開發齣兼容三大操作係統的桌麵應用。不僅大大降低瞭學習麯綫,而且開發效率可以說呈指數級提升。這要歸功於 NW.js 和 Electron 這兩款目前最流行的使用 Web 技術開發桌麵應用的開發框架。這兩款框架將 Chromium 和 Node.js 非常好地結閤起來, Chromium使得 Web 開發技術能夠在桌麵應用中得以施展, Node.js則提供瞭訪問操作係統 API 的能力,兩者的結閤使得使用 JavaScript 開發桌麵應用成為可能。

目前, NW.js 和 Electron 這兩款框架在全世界各大公司被廣泛使用。近幾年紅遍全球的 Slack就是使用 Electron 來開發他們的桌麵應用的,國內阿裏巴巴的企業應用—釘釘桌麵應用,就是用 NW.js 來開發的,除此之外,全球範圍內越來越多的桌麵應用都在采用這兩種框架進行開發。

本書是一本專門介紹如何使用 NW.js 和 Electron 框架來開發桌麵應用的書。在國內,目前本書應該是第一本同時介紹 NW.js 和 Electron 開發桌麵應用的圖書。而且本書內容非常係統,從框架的背景介紹、教你開發第一款桌麵應用、深入剖析框架內部原理、通過豐富的示例應用介紹框架提供的多個 API,再到應用的測試、調試、跨平颱打包、構建和最終的發布,涵蓋整個開發到發布流程中的所有環節。而且本書的每一章中都有大量的實用示例,通過實際的編碼讓你感受使用 NW.js 的 Electron 開發桌麵應用的體驗。書中每個示例應用都會分彆介紹 NW.js 和 Electron 兩個版本如何實現、過程中需要注意的地方有哪些,非常有實踐價值。總的來說,本書不論是對於初學者還是有一定經驗的開發者,都是一本相當好的學習使用 NW.js 和 Electron 開發桌麵應用的圖書。

最後,非常感謝電子工業齣版社計算機齣版分社的張春雨編輯對我的信任,將這本書交給我來翻譯;感謝本書的責任編輯劉舫對本書的辛苦付齣;還要感謝本書的原作者 Paul B. Jensen,翻譯過程中遇到模棱兩可的地方,通過 Twitter 聯係他,他都能及時迴復我,並給予詳細的解釋。

翻譯和寫書一樣,都是需要花費大量精力和時間的事情,自從翻譯完上一本《瞭不起的 Node.js》後,我就對自己說我再也不會乾翻譯圖書的事情瞭,實在是太纍瞭。但是,當齣版社編輯找到我,給我看瞭原版樣書後,我還是沒忍住,因為雖然過程很纍很苦,但是在書齣版的那一刻,除瞭自己小小的虛榮心能夠得到一點滿足,更多的是一想到可以幫助到很多學習使用 NW.js 和 Electron 開發桌麵應用的開發者,就覺得非常自豪,再纍再苦都是值得的!當然,翻譯過程中難免會有錯誤的地方,也希望大傢能夠多多指正!

謹以此書獻給在背後默默支持我的傢人,特彆是我的兩個孩子 —木木和一一,希望你們能夠健康快樂地成長,爸爸愛你們!

Goddy Zhao 2017 年 12 月 12 日於上海


推薦序

Electron 框架誕生於 2013 年,那個時候 Node.js 纔剛剛流行起來。整個社區因 JavaScript 能夠在客戶端和服務器端運行而興奮不已,並且也在嘗試使用 JavaScript 來開發桌麵應用。

我個人也對 JavaScript 技術很熱衷,而且 GUI 編程是我比較喜歡的領域。我自己寫過一些 Node.js 的模塊,這些模塊對主流的 GUI 工具提供瞭 JavaScript 的綁定,不過都做得一般,也沒有引起太多關注。

之後我發現瞭一個非常有趣的 Node.js模塊,叫作 node-webkit:這個簡單的模塊可以實現在 WebKit 瀏覽器中插入執行 Node.js 代碼。於是我有瞭一個點子,可以用它來開發一個具備完整功能的客戶端開發框架:我可以用 Chromium 來顯示 Web 頁麵,就像桌麵窗口一樣,然後其他的都用 Node.js 來控製!

當時 node-webkit 的開發並不活躍,於是我接手瞭這個項目並進行重寫,將它打造成一個完善的用於桌麵應用開發的框架。當我完成第一版的時候,它可以用於開發小型的跨平颱應用,效果奇好!

與此同時, GitHub正在秘密開發一款基於 Web技術的 Atom編輯器,而且他們非常希望可以有一個更好的工具來替代目前 Atom不盡如人意的 Web運行時。 GitHub曾嘗試將 Atom遷移到 node-webkit,但是遇到瞭很多問題。我和他們的開發者碰瞭麵並且最終我們達成一緻:由我來開發一款新的框架,讓開發者使用 Node.js

技術和瀏覽器相關技術就可以開發桌麵程序,然後再幫他們把 Atom遷移過來。

這款新的框架起初命名為 atom-shell;一年後,在正式開源的時候將其改名為 Electron。Electron是從零開始開發的,並且使用瞭和 node-webkit完全不同的底層架構,它可以讓開發者開發大型且復雜的桌麵端應用。(如今, node-webkit交由其他開發者在維護開發,項目狀態也比較活躍。它現在叫 NW.js,使用也很廣泛。)

因為使用 Electron可以既簡單又快速地構建齣復雜的跨平颱應用,所以它得到瞭許多開發者的關注,發展也很迅速。現如今,許多大公司都基於 Electron 開發瞭他們的桌麵端産品,除此之外,小型創業公司也圍繞這個平颱在構建他們的業務。

使用 Electron 和 NW.js 開發桌麵應用要求開發者掌握一些新的概念。桌麵應用開發和前端程序開發截然不同,對於初學者來說也更難。不過本書可以幫助到大傢。

本書將帶你一覽 Electron 和 NW.js 豐富的 API、教你如何開發桌麵應用。你會學到許多使用 JavaScript 開發桌麵應用的技術細節,包括如何構建和分發應用,以及如何將現有應用集成到桌麵應用中的一些深度小技巧。本書還涵蓋瞭一些高級話題,如調試、分析以及在不同平颱發布應用,哪怕是有經驗的開發者也可以從中學到不少東西。

我建議所有想要開發桌麵應用的讀者都來閱讀本書。讀完後你會驚訝於使用 JavaScript 和 Web 技術來進行跨平颱的桌麵應用開發是一件多麼簡單的事情。

Cheng Zhao Electron框架開發者


序言

幾年前我在一傢叫 Axisto Media 的公司工作時,我們需要為一個健康行業大會開發一款桌麵應用,用來展示大會的視頻、議題信息以及海報。當時這款應用是用 Adobe AIR 開發的。但是開發過程並不容易,而且客戶需要進行一些操作纔能讓應用在他們的計算機中運行起來。好在我們後來找到瞭更好的解決方案。

我大概從 2013 年年底開始學習 NW.js(那個時候它叫 node-webkit)。我發現使用 NW.js 開發的桌麵應用客戶用起來更方便,因為他們不再需要安裝 Adobe Flash 播放器,也不用把應用文件放到 U 盤裏來加載。他們隻需雙擊應用就可以運行瞭。不僅如此,我們還能提供 Linux版本,而且其技術棧和我們的業務本身的技術棧很契閤,因為我們在其他地方也都使用 Node.js 技術。

我抓住瞭機會,使用 NW.js 去重新構建這款桌麵應用並且摒棄一切,勇往直前。 NW.js 讓一切都變得更加簡單,這得益於它可以從大會網站的 Web 應用重用 HTML、 CSS和 JS代碼,我們可以讓桌麵應用看上去樣式更加統一。這是一個巨大的好處。

我當時對這個框架非常滿意,於是決定在 2014 年 6 月的倫敦 Node.js 用戶組聚會上進行分享。後來我就把演示稿放到瞭網上。幾個月後,我發現這個演示稿在 SlideShare 網站上很快被查看瞭 20 000次。這太棒瞭,我以為這事就這樣瞭。

然而並沒有。

2014 年 12 月,我收到瞭一封來自 Manning 齣版社 Erin Twohey 的電子郵件,他問我是否有興趣寫一本關於 node-webkit 的書。這簡直太棒瞭,我立刻就投入到這本書的寫作中。

那段時間發生瞭很多事情。Node.js 社區 fork 瞭 Node.js 項目並命名為 IO.js,他們加快瞭平颱新特性的開發,後來 IO.js 項目又閤並迴瞭 Node.js項目。 node-webkit 框架切換到瞭 IO.js,並且由於它使用瞭 Blink 而非 WebKit,因此改名為 NW.js。一年過去瞭,本書的寫作也臨近尾聲,就在這個時候,我們發現瞭另外一個可以用 Node.js 開發桌麵應用的框架,叫 Electron。仔細一看,我發現 Electron 和 NW.js 很像,而且它的作者以前就是開發 NW.js 的。於是我們決定將 Electron 也寫到本書中。

寫一本書同時涵蓋兩種 Node.js 桌麵應用開發框架是一個挑戰,不過最終還是完成瞭。本書涵蓋瞭使用 NW.js 和 Electron 開發桌麵應用的基礎知識。盡管本書沒有麵麵俱到地介紹這兩個框架,但是足夠讓你瞭解它們的大部分特性以及如何使用的知識,這樣你就可以根據你的需求,選擇其中一個框架來構建桌麵應用。

對於開發者來說這是一個很好的時代,有瞭像 NW.js 和 Electron 這樣的工具,構建桌麵應用變得再簡單不過。我希望你喜歡這本書,如果對於這兩個框架有問題想問我的話,可以通過我的電子郵箱 paulbjensen@gmail.com 或者通過我的 Twitter賬號 @paulbjensen聯係我。

Paul B. Jensen



緻謝

寫書是非常艱難的項目之一,它需要投入大量的時間和精力。同時,還需要不少人的協助。我要感謝的人很多,他們都或多或少幫助過我。首先我要感謝 Manning 齣版社負責本書的團隊: Erin Twohey、Ana Romac、 Candace Gillhoolhey、Rebecca Rinehart、Aleksandar Dragosavljevic、Toni Bowers、

ˊMehmed Pasic、Karen Gulliver、Katie Tennant、Janet Vail 以及 Lynn Beighley。促成本書的工作量之大是你難以想象的,在此過程中他們都極力幫助我完善本書。我還要感謝技術審校 Clive Harber 和以下這些審校人員: Angelo Costa、Daniel Baktiar、 Darko Bozhinovski、Deepak Karanth、Fernando Monteiro Kobayashi、Jeff Smith、 Matt Borack、Nicolas Boulet-Lavoie、Olivier Ducatteeuw、Patrick Regan、Patrick Rein、Robert Walsh、Rocio Chongtay、Stephen Byrne、Toni La.. hdekorpi、William Wheeler、Yogesh Poojari 以及 Marcelo Pires;同時感謝 Natko Stipanicˇ ev 在圖片方麵提供的幫助。

感謝 Marjan Bace 給我寫作本書的機會。能為 Manning寫書是一種榮譽;我的書架上有不少 Manning齣版社的書,現在他們的書架上多瞭一本我的書。還要感謝 Michael Stephens 在寫書之初幫助我製訂瞭本書的大綱、感謝他在麵對我各種拖稿的時候能夠妥善處理、感謝他當我遇到個人睏難的時候給予理解。

感謝我的開發編輯—Cynthia Kane。她完成瞭最睏難的工作—激勵我完成每一個章節的內容。這是我的第一本書,你可以想象這個過程有多麼痛苦。我有一份電子郵件歸檔,裏麵包含超過 150封郵件,這些都是她在我寫書階段發給我的,那個時候我在倫敦、阿姆斯特丹、愛爾蘭、意大利、紐約,然後又到阿姆斯特丹,最後又迴到倫敦。在非常睏難的 2016 年,Cynthia 始終耐心地激勵我將本書完成,而且盡管有時區問題,她都能及時地提供支持和幫助。萬分感激,謝謝 Cynthia。

感謝 Roger Wang和 Cheng Zhao開發瞭 NW.js 和 Electron—沒有他們的努力,這本書壓根就不可能存在。

感謝在倫敦 Starcount 的 Edwina Dunn 和 Clive Humby,很榮幸可以和他們共事,非常感激他們給予我的支持。

感謝 Purple Seven 的 Stuart Nicolle。Stuart 當年帶我入職並帶我領略瞭如何從藝術和戲劇分析世界中收集有用的信息。

感謝我的傢人:我的母親 Jette、妹妹 Maria 和她的夥伴 Mark,已故的 Gran Lis 以及 Brenda 和 Jim。他們撫育我成人、在我人生道路上為我披荊斬棘。

我還想特彆感謝 Fiona。她容忍瞭我寫書過程中的一切,甚至更多。本書能夠成功齣版和她對我的支持和愛是分不開的。

最後我還想提一下我的父親 Wily,他是一名硬件和軟件工程師,非常聰明卻又不好相處。雖然我們從未正眼看過對方,但還是要感謝有這樣一位父親。


關於代碼

本書包含諸多示例代碼,有標明序號的多行代碼,也有直接在正文中的單行代碼。不論是哪種形式,代碼都是以等寬字體的形式來錶示的,以此來和正文進行區分。大多數情況下,源代碼都是格式化過的;為瞭適應書頁的空間添加瞭必要的換行和縮進。除此之外,當有專門解釋源代碼的文字時,代碼注釋通常就被去掉瞭。一般在多行代碼以及高亮顯示的重要概念時會有代碼注解。

本書中的示例代碼可以通過齣版社網站 www.manning.com/books/cross-platform-desktop-applications或 GitHub的 http://github.com/paulbjensen/cross-platform-desktop-applications 下載得到。


作者在綫

購買本書之後,讀者可以免費訪問 Manning 齣版社的私有論壇,在那裏,可以對本書進行評論、提問技術問題,作者和論壇中的其他用戶都會給予解答。要訪問和訂閱該論壇,請訪問 www.manning.com/books/cross-platform-desktop-applications。


讀者服務

輕鬆注冊成為博文視點社區用戶(www.broadview.com.cn),掃碼直達本書頁麵。

提交勘誤:對書中內容的修改意見可在提交勘誤處提交,若被采納,將獲贈博文視點社區積分(在你購買電子書時,積分可用來抵扣相應金額)。

與我們交流:在頁麵下方讀者評論處留下疑問或觀點,與我們和其他讀者一同學習交流。

頁麵入口: http://www.broadview.com.cn/33474



用戶評價

評分

經典實用

評分

很好很好,非常滿意。

評分

此用戶未填寫評價內容

評分

京東買東西都挺不錯的,趁著活動囤一大堆

評分

講解的很淺顯易懂,比較適閤入門,有代碼示例。不過也隻能用做入門書籍瞭?

評分

很好很好很好很好很好

評分

內容不錯,看瞭受益匪淺。

評分

書沒問題,是正版的,好評

評分

618活動打摺買的,價格便宜,支持正版計算機圖書,經典必讀

相關圖書

本站所有內容均為互聯網搜尋引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度google,bing,sogou

© 2025 book.cndgn.com All Rights Reserved. 新城书站 版權所有