Get in Touch

Course Outline

Introduction to Web Programming and WebAssembly

  • The evolution of client-side web programming
  • Limitations of traditional JavaScript-based browser applications
  • An introduction to WebAssembly and its role in modern web development
  • Key advantages of WebAssembly:
    • Enhanced performance
    • Portability across platforms
    • Resource efficiency
    • Near-native execution speeds in browsers

WebAssembly Architecture and Fundamentals

  • Understanding the WebAssembly execution model
  • The structure and anatomy of a WebAssembly module
  • Interpreting binary formats and text representations
  • Modules, memory, tables, and the execution environment
  • The interplay between JavaScript and WebAssembly

Transitioning from JavaScript to WebAssembly

  • The progression from JavaScript to asm.js and WebAssembly
  • Comparing JavaScript and WebAssembly execution models
  • Browser support and runtime integration details
  • Invoking WebAssembly code within JavaScript applications

Structuring WebAssembly Programmes

  • Identifying key WebAssembly components
  • Managing functions, imports, and exports
  • Handling memory and data exchange mechanisms
  • Representing bytecode using Abstract Syntax Trees (AST)

Developing WebAssembly Applications

  • Creating your first WebAssembly module
  • Understanding instructions and syntax conventions
  • Building modules using C and C++
  • Compiling source code into the WebAssembly format
  • Integrating WebAssembly modules into web applications

WebAssembly Toolchain and Development Environment

  • Configuring WebAssembly development tools
  • Utilising compilers and build systems effectively
  • Working with editors and integrated development environments
  • Debugging strategies for WebAssembly applications
  • Testing and optimising WebAssembly code

Advanced WebAssembly Concepts

  • Addressing performance considerations
  • Techniques for optimising WebAssembly applications
  • Interacting with browser APIs
  • Security implications and best practices
  • Exploring interoperability between WebAssembly and JavaScript

Practical WebAssembly Workshop

  • Constructing a complete WebAssembly application
  • Compiling C/C++ code for browser execution
  • Integrating WebAssembly with a web interface
  • Refining and enhancing application performance through debugging

Future Applications of WebAssembly

  • Current use cases and industry adoption trends
  • Application domains including:
    • Gaming
    • Virtual reality
    • High-performance computing
    • Advanced web applications
  • Emerging trends in browser-based development

Course Review and Conclusion

  • Reviewing key WebAssembly concepts and development workflows
  • Discussing industry best practices
  • Identifying pathways for further learning

Requirements

  • Practical experience or a solid understanding of client-side, browser-based programming
  • Proficiency in C/C++ programming
  • A keen interest in expanding web development beyond JavaScript

Intended Audience

  • Web developers
  • C and C++ developers
 21 Hours

Number of participants


Price per participant

Testimonials (3)

Provisional Upcoming Courses (Require 5+ participants)

Related Categories