Learn WebAssembly: Build web applications with native performance using Wasm and C/C++

Mike Rourke

  • 出版商: Packt Publishing
  • 出版日期: 2018-09-26
  • 售價: $1,810
  • 貴賓價: 9.5$1,720
  • 語言: 英文
  • 頁數: 328
  • 裝訂: Paperback
  • ISBN: 1788997379
  • ISBN-13: 9781788997379
  • 相關分類: 前端開發
  • 海外代購書籍(需單獨結帳)



In the first definitive guide on WebAssembly, you'll learn how you can wield this new technology to break through the current barriers of web development and build an entirely new class of performant applications .

Key Features

  • Generate WebAssembly modules from C and C++ using Emscripten and interact with these modules in the browser
  • Learn how to use WebAssembly outside of the browser and load modules using Node.js
  • Build a high-performance application using C and WebAssembly and port an existing C++ game to WebAssembly using Emscripten

Book Description

WebAssembly is a brand-new technology that represents a paradigm shift in web development. This book aims to teaches programmers how to leverage this technology to write high- performance applications that run in the browser.

This book will introduces you to the powerful WebAssembly concepts of WebAssembly that willto help you write lean and powerful web applications with native performance.

You will start with the evolution of web programming, the state of things today, and what can be done with the advent and release of WebAssembly. We take a look at the journey from JavaScript to asm.js to WebAssembly. We then move on to analyzinge the anatomy of a WebAssembly module and the relationship between the binary and text formats, along with the corresponding JavaScript API.

Further on, weyou'll implement all the techniques you've learned by to building a high-performance application using C and WebAssembly, and then port an existing game written in C++ to WebAssembly using Emscripten.

By the end of this book, you would will be well-equipped to create high-performance applications and games for the web using WebAssembly.

What you will learn

  • Learn how WebAssembly came to be and its associated elements (text format, module, and JavaScript API)
  • Create, load, and debug a WebAssembly module (editor and compiler/toolchain)
  • Build a high-performance application using C and WebAssembly
  • Extend WebAssembly's feature set using Emscripten by porting a game written in C++
  • Explore upcoming features of WebAssembly, Node.js integration, and alternative compilation methods

Who this book is for

If you are a web developer or C/C++ programmer keen to leverage the powerful technology of WebAssembly to build high-performance web applications, then this book is for you.

Table of Contents

  1. What is WebAssembly?
  2. Elements ofWebAssembly – Wat, Wasm, and the JavaScript API
  3. Development Workflow, Tooling, and Configuration
  4. Installing the Required Dependencies
  5. Creating and Loading aWebAssembly Module
  6. Interacting with JavaScript and Debugging
  7. Creating an Application from Scratch
  8. Porting a Game with Emscripten
  9. Integrating with Node.js
  10. Advanced Tools and Upcoming Features



- 使用Emscripten從C和C++生成WebAssembly模組,並在瀏覽器中與這些模組互動
- 學習如何在瀏覽器以外的環境中使用WebAssembly,並使用Node.js加載模組
- 使用C和WebAssembly建立高效應用程式,並使用Emscripten將現有的C++遊戲移植到WebAssembly



您將從網頁程式設計的演進開始,了解當今的狀況以及WebAssembly的出現和發布所帶來的變革。我們將回顧從JavaScript到asm.js再到WebAssembly的發展過程。然後,我們將分析WebAssembly模組的結構以及二進制和文本格式之間的關係,以及相應的JavaScript API。



- 了解WebAssembly的起源及其相關元素(文本格式、模組和JavaScript API)
- 創建、加載和調試WebAssembly模組(編輯器和編譯器/工具鏈)
- 使用C和WebAssembly建立高效應用程式
- 使用Emscripten將使用C++編寫的遊戲移植到WebAssembly,擴展WebAssembly的功能集
- 探索WebAssembly的即將推出的功能、與Node.js的整合以及替代的編譯方法

1. 什麼是WebAssembly?
2. WebAssembly的元素 - Wat、Wasm和JavaScript API
3. 開發工作流程、工具和配置
4. 安裝所需的依賴項
5. 創建和加載WebAssembly模組
6. 與JavaScript互動和調試
7. 從頭開始創建應用程式
8. 使用Emscripten移植遊戲
9. 與Node.js整合
10. 高級工具和即將推出的功能