《WebAssembly實戰》資源連結清單
為方便讀者查詢,本文彙總了《WebAssembly實戰》一書中用到的部分網路資源連結。連結內容可能隨時間變化,請讀者知悉。
第 1 章
1.6節
WebAssembly 官方網站:https://WebaAssembly.org/docs/security。
第 3 章
3.4節
Emscripten網站https://emscripten.org/docs/optimizing/Optimizing-Code.html上給出了的幾個優化標記。
3.5.2節
以下文章更詳細地解釋了為什麼建議將script標籤放在body標籤的結尾處:Ilya Grigorik, “Adding Interactivity with JavaScript,” Google Developers,http://mng.bz/xld7。
3.6.2節
包括Edge、Firefox、Chrome、Safari 和Opera 等多數當代桌面和移動瀏覽器,支援WebAssembly。可以在以下網站檢視詳細列表:https://caniuse.com/#search=WebAssembly。
MDN(正式名為Mozilla 開發者網路,Mozilla developer network) Web Docs 上面有一個關於函式instantiateStreaming 的文件,並且其中在頁面最後包含了最新的瀏覽器相容性列表:http://mng.bz/ZeoN。
第 4 章
4.1.1節
有些C標頭檔案已經過時被棄用,或者C++中已經不再支援。stdlib.h就是一個例子。現在應該使用cstdlib,而不是stdlib.h。要想得到完整的標頭檔案變化列表,可以訪問:https://en.cppreference.com/w/cpp/header。
4.1.3節
如果想要熟悉HTML基礎,W3schools 官網中有很好的教程:www.w3schools.com/html。
第 5 章
5.3節
以下網站列出了一些開源C++庫:https://en.cppreference.com/w/cpp/links/libs。
第 6 章
6.1.4節
在JavaScript中,匿名函式是定義時不包含名稱的函式。如果想要了解更多資訊,可以參考MDN線上文件頁面:http://mng.bz/7zDV。
第 7 章
7.2節
有關WebAssembly JavaScript API的簡要論述在MDN線上文件中也有很好的概述:http://mng.bz/vln1。
7.2.2節
要想更深入地學習Emscripten檔案系統,可以訪問:https://emscripten.org/docs/api_reference/Filesystem-API.html。
有關dlopen和模式標記的更多資訊,參見開發組基本規範:http://mng.bz/4eDQ。
7.2.3節
可以調整一些設定來控制Emscripten生成的JavaScript程式碼的執行。以下網頁列出了其中一部分:https://emscripten.org/docs/api_reference/module.html。
第 8 章
8.2節
如果需要更多關於構建導航欄的資訊,可以訪問:www.w3schools.com/css/css_navbar.asp。
第 9 章
pthread(也稱為POSIX執行緒,POSIX thread)是POSIX.1c標準定義的一套獨立於程式語言執行模型的API(參見:https://en.wikipedia.org/wiki/POSIX_Threads)。
9.1節
要想知道Web worker可用的API的完整列表,可以訪問MDN線上文件頁面:http://mng.bz/gVBG。
要想了解Emscripten Worker API的更多資訊,可以訪問文件中的這個頁面:http://mng.bz/eD1q。
9.2節
關於Node.js worker執行緒支援的更多資訊,參見:https://nodejs.org/api/worker_threads.html。
9.3.1節
有關vector物件的更多資訊,參見:https://en.cppreference.com/w/cpp/container/vector。
9.3.2節
如果感興趣,可以在以下網頁找到Clang支援的C++標準的更多資訊:https://clang.llvm.org/cxx_status.html。
9.3.5節
關於MessageEvent物件的更多資訊,參見MDN線上文件頁面:http://mng.bz/pyPw。
9.4節
關於WebAssembly執行緒方案的更多資訊,包括可用的各種原子記憶體指令的詳細資訊,參見以下的GitHub頁面:http://mng.bz/O9xa。
要想了解Emscripten對pthread的更多支援,參見:https:// emscripten.org/docs/porting/pthreads.html。
9.4.1節
有關pthread屬性物件的更多資訊,參見:https://linux.die.net/man/3/pthread_attr_init。
9.5節
Pranav Jha和Senthil Padmanabhan合著的文章“WebAssembly at eBay: A Real-World Use Case”中詳細介紹了eBay如何使用WebAssembly,其中結合了Web worker和一個JavaScript庫來改進其條形碼掃描器:http://mng.bz/Ye1a。
第 10 章
要想獲取關於WASI的更多資訊,以下論文提供了很好的講解:Simon Bisson的“Mozilla Extends WebAssembly Beyond the Browser with WASI”,The New Stack, http://mng.bz/E19R。
10.4.1節
如果對學習更多Node.js File System物件感興趣,可以訪問:https://nodejs.org/api/fs.html。
如果想要了解關於File System模組的readFile函式以及可選的第二個引數的更多資訊,可以訪問:http://mng.bz/rPjy。
第 11 章
11.1節
可以在以下網址找到物件型別的記憶體與數字指令列表:http://webassembly.github.io/spec/core/text/instructions.html。
11.1.9節
要想了解有關新變數指令的更多資訊,參見:http://mng.bz/xljX。
Fisher-Yates洗牌演算法:https://gist.github.com/sundeepblue/10501662。
第12章
有關除錯模式的更多資訊,參見Emscripten文件:http://mng.bz/JzdZ。
關於-g標記的更多資訊,參見:http://mng.bz/wlj5。
12.4.4節
關於LinkError的更多資訊,參見MDN線上文件:http://mng.bz/qXjx。
第 13 章
以下網站提供了各種不同型別軟體測試的更多資訊:https://en.wikipedia.org/wiki/Software_testing。
13.1節
如果想要了解更多關於Mocha的資訊,可以訪問:https://mochajs.org。
關於Chai 的可用斷言風格的更多資訊,參見:www.chaijs.com/api。
雖然本章選擇了Chai作為斷言庫與Mocha一起使用,但其實可以使用任何斷言庫。可以在以下網站找到若干可用庫的列表:https://mochajs.org/#assertions。
13.2.3節
本節將要建立的HTML檔案從Mocha的網站上覆制而來,並進行了少量修改。原始檔案參見:https://mochajs.org/#running-mocha-in-the-browser。
13.3節
可以訪問https://github.com/WebAssembly/proposals來獲得WebAssembly功能提案的列表及其當前狀態。
Emscripten文件:https://emscripten.org。
Mozilla開發者網路上的WebAssembly文件很不錯,位於:https://developer.mozilla.org/en-US/docs/WebAssembly。
附錄 A
A.4節
樣例wat2wasm支援輸入文字格式並下載Wasm檔案:https://webassembly.github.io/wabt/demo/wat2wasm。
樣例wasm2wat支援上傳一個Wasm檔案並檢視文字格式:https://webassembly.github.io/wabt/demo/wasm2wat。
對於本書中的示例,我們只需要使用線上樣例wat2wasm,但如果需要,也可以下載工具包原始碼並在本地構造Wasm檔案。克隆和構造工具包的指示參見:https://github.com/WebAssembly/wabt。
A.5節
如果不想使用CDN,則還需要下載jQuery。可以從以下地址下載:https://jquery.com/download。
附錄 D
D.3.2節
Web瀏覽器有一個navigator物件,可以用navigator.onLine方法訪問它來確定瀏覽器是否線上。如果想要了解關於這個方法的更多資訊,可以訪問MDN線上文件頁面:http://mng.bz/yzZe。
相關文章
- 《小程式開發原理與實戰》資源連結清單
- 《深入剖析Kubernetes》資源連結清單
- 《JavaScript深度學習》資源連結清單JavaScript深度學習
- 《資料科學入門(第2版)》資源連結清單資料科學
- 《JavaScript高階程式設計(第4版)》資源連結清單JavaScript程式設計
- 探索資料結構:單連結串列的實戰指南資料結構
- 實戰PHP資料結構基礎之單連結串列PHP資料結構
- 《Python機器學習建模與部署:從Keras到Kubernetes》資源連結清單Python機器學習Keras
- 《bash shell指令碼程式設計經典例項(第2版)》資源連結清單指令碼程式設計
- k8s資源清單K8S
- 最全最實用的人工智慧AI資源清單人工智慧AI
- js實現資料結構--單連結串列JS資料結構
- 連結串列-單連結串列實現
- 04 . kubernetes資源清單YAML入門YAML
- nodejs 實現 磁力連結資源搜尋 BT磁力連結爬蟲NodeJS爬蟲
- 資料結構實驗之連結串列五:單連結串列的拆分資料結構
- 【資料結構】連結串列(單連結串列實現+詳解+原碼)資料結構
- 資料結構 - 單連結串列 C++ 實現資料結構C++
- 資料結構——單連結串列的C++實現資料結構C++
- 資料結構之php實現單向連結串列資料結構PHP
- 資料結構-單連結串列、雙連結串列資料結構
- 實戰PHP資料結構基礎之雙連結串列PHP資料結構
- 實戰專案 10: 貨物清單應用
- 資料結構和演算法——Go實現單連結串列並且反轉單連結串列資料結構演算法Go
- 用c語言實現資料結構——單連結串列C語言資料結構
- 資料結構-2.單向連結串列的實現資料結構
- 資料結構--單連結串列(通過陣列實現)資料結構陣列
- 資料結構——單連結串列介面實現(C語言)資料結構C語言
- Python實現單連結串列Python
- 資料結構之單連結串列資料結構
- 資料結構04——單連結串列資料結構
- 你不可錯過的Java學習資源清單Java
- go 實現單向連結串列Go
- 資料結構實驗之連結串列七:單連結串列中重複元素的刪除資料結構
- 演算法與資料結構-連結串列((linked-list)-Java實現單向連結串列演算法資料結構Java
- Kubernetes中資源清單與Pod的生命週期(二)
- 知識資源清單網度盤下載分享20201115
- java實現單連結串列、棧、佇列三種資料結構Java佇列資料結構