Новый шаг для WebAssembly: модель компонентов может улучшить интеграцию с вебом

Разработчики WebAssembly предлагают новый архитектурный подход, который может заметно упростить использование технологии в браузере. Речь идет о WebAssembly Component Model - инициативе, которая должна сделать Wasm более удобным для разработчиков и лучше интегрированным с веб-платформой.

Сегодня WebAssembly широко используется как высокопроизводительный формат выполнения кода в браузере и как целевая платформа компиляции для разных языков программирования. Но, несмотря на преимущества, технология по-прежнему сталкивается с рядом ограничений, из-за которых разработчики часто предпочитают обычный JavaScript.

Почему WebAssembly до сих пор используют не так часто

WebAssembly появился в 2017 году как бинарный формат, который позволяет запускать код практически на нативной скорости прямо в браузере. Он особенно полезен для ресурсоемких задач: например, графики, игр или обработки данных.

Однако на практике у технологии есть проблема: она слабо интегрирована с веб-платформой.

По словам инженера Mozilla Райана Ханта, WebAssembly сегодня фактически остается языком второго класса для веба. Даже несмотря на появление новых возможностей, таких как общая память, обработка исключений и оптимизации памяти, разработчикам часто проще использовать JavaScript.

Причины довольно прагматичные:

  • JavaScript проще загружать и подключать

  • у него прямой доступ к Web API

  • разработчику не нужно строить сложную инфраструктуру вокруг кода

В итоге WebAssembly чаще используют крупные компании, которые могут позволить себе дополнительные инженерные затраты.

Что предлагает модель компонентов

Чтобы решить проблему интеграции, сообщество WebAssembly работает над Component Model: новой архитектурой для построения приложений и библиотек на базе Wasm.

Главная идея это создать стандартную систему компонентов, которые можно легко подключать друг к другу независимо от языка программирования.

Предложение включает несколько ключевых возможностей:

  • стандартный формат исполняемого компонента;

  • поддержку разных языков и компиляторов;

  • механизмы загрузки и связывания модулей WebAssembly;

  • удобное использование Web API.

Компонент в этой модели описывает высокоуровневый API, который внутри реализуется набором низкоуровневых Wasm-модулей. Это делает архитектуру более модульной и удобной для повторного использования.

Совместная работа крупных компаний

Разработкой Component Model занимается WebAssembly Community Group при участии нескольких крупных компаний и организаций.

Mozilla активно участвует в проектировании архитектуры, а Google сейчас оценивает предложенную модель и ее потенциальное влияние на экосистему.

Работа над спецификацией ведется с 2021 года. Разработчики считают, что именно этот шаг может сделать WebAssembly полноценной частью веб-платформы.

Что это может изменить для разработчиков

Если модель компонентов станет стандартом, WebAssembly сможет гораздо лучше вписаться в веб-экосистему.

Потенциальные преимущества:

  • упрощение разработки библиотек на Wasm;

  • возможность комбинировать код из разных языков;

  • более удобная интеграция с браузерными API;

  • снижение сложности сборки и запуска приложений.

Это может заметно расширить аудиторию технологии. Сейчас многие разработчики используют WebAssembly только тогда, когда производительность критически важна. Новая архитектура может сделать его более универсальным инструментом.

Источник: InfoWorld

Похожие статьи

Рекомендательные технологии Подробнее
Технологии и IT-новости 4 месяца назад

Как ИИ влияет на обучение навыкам программирования

Исследование Anthropic показало, что искусственный интеллект не всегда помогает в обучении программированию. Джуниоры, полагающиеся на ИИ, хуже справляются с освоением нового материала, хотя ИИ может ускорить отдельные задачи.

Технологии и IT-новости 4 месяца назад

Роботам дали "кожу", которая чувствует боль и спасает от повреждений

Учёные разработали нейроморфную роботизированную кожу, которая позволяет гуманоидным роботам ощущать опасные воздействия и реагировать на них почти мгновенно. Технология имитирует человеческие болевые рефлексы и повышает безопасность взаимодействия роботов с окружающей средой.

Технологии и IT-новости 6 месяцев назад

Экран, который можно почувствовать: как работает новая технология Optopixels

Учёные из Калифорнийского университета в Санта-Барбаре разработали экспериментальный дисплей Optopixels, в котором изображение можно не только видеть, но и ощущать пальцами. Лазерный свет заставляет отдельные пиксели подниматься над поверхностью экрана, формируя физический рельеф.

Технологии и IT-новости 2 месяца назад

Баг macOS блокирует новые сетевые соединения после 49 дней работы

В macOS найден баг, из-за которого сеть перестает работать после 49 дней аптайма. Причина переполнение 32-битного счетчика в TCP/IP-стеке. Решение пока одно - перезагрузка.