Cargando…

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

WebAssembly is a brand new technology that represents a paradigm shift in web development. Learning WebAssembly will teach you how to leverage this technology to write performant applications that run in the browser. This book covers the history and underlying concepts of WebAssembly, before explori...

Descripción completa

Detalles Bibliográficos
Clasificación:Libro Electrónico
Autor principal: Rourke, Mike
Formato: Electrónico eBook
Idioma:Inglés
Publicado: Birmingham : Packt Publishing Ltd, 2018.
Temas:
Acceso en línea:Texto completo
Tabla de Contenidos:
  • Cover; Title Page; Copyright and Credits; Dedication; PacktPub.com; Contributors; Table of Contents; Preface; Chapter 1: What is WebAssembly?; The road to WebAssembly; The evolution of JavaScript; Google and Native Client; Mozilla and asm.js; WebAssembly is born; What exactly is WebAssembly and where can I use it?; Official definition; Binary instruction format; Portable target for compilation; The core specification; Language concepts; Semantic phases; The JavaScript and Web APIs; So will it replace JavaScript?; Where can I use it?; What languages are supported?; C and C++; Rust
  • Other languagesWhat are the limitations?; No garbage collection; No direct DOM access; No support in older browsers; How does it relate to Emscripten?; Emscripten's role; The EMSDK and Binaryen; Summary; Questions; Further reading; Chapter 2: Elements of WebAssembly
  • Wat, Wasm, and the JavaScript API; Common structure and abstract syntax; Wat; Definitions and S-expressions; Values, types, and instructions; Role in the development process; Binary format and the module file (Wasm); Definition and module overview; Module sections; The JavaScript and Web APIs; WebAssembly store and object caches
  • Loading a module and the WebAssembly namespace methodsWebAssembly objects; WebAssembly. Module; WebAssembly. Instance; WebAssembly. Memory; WebAssembly. Table; WebAssembly errors (CompileError, LinkError, RuntimeError); Connecting the dots with WasmFiddle; What is WasmFiddle?; C code to Wat; Wasm to JavaScript; Summary; Questions; Further reading; Chapter 3: Setting Up a Development Environment; Installing the development tooling; Operating systems and hardware; macOS ; Ubuntu; Windows; Package managers; Homebrew for macOS; Apt for Ubuntu; Chocolatey for Windows; Git; Installing Git on macOS
  • Installing Git on UbuntuInstalling Git on Windows; Node.js; nvm; Installing nvm on macOS; Install nvm on Ubuntu; Installing nvm on Windows; Installing Node.js using nvm; GNU make and rimraf; GNU Make on macOS and Ubuntu; Installing GNU Make on macOS; Installing GNU Make on Ubuntu; Installing GNU make on Windows; Installing rimraf; VS Code; Installing Visual Studio Code on macOS; Installing Visual Studio Code on Ubuntu; Installing VS Code on Windows; Configuring VS Code; Managing settings and customization; Extensions overview; Configuration for C/C++ and WebAssembly
  • Installing C/C++ for VS CodeConfiguring C/C++ for VS Code; WebAssembly Toolkit for VSCode; Other useful extensions; Auto rename tag; Bracket pair colorizer; Material Icon theme and Atom One Light theme; Setting up for the web; Cloning the book examples repository; Installing a local server; Validating your browser; Validating Google Chrome; Validating Mozilla Firefox; Validating other browsers; Other tools; iTerm2 for macOS; Terminator for Ubuntu; cmder for Windows; Zsh and Oh-My-Zsh; Summary; Questions; Further reading; Chapter 4: Installing the Required Dependencies