@matroshin

Гениальная идея писать все библиотеки на C++ и юзать их в браузере через WASM, в чем подводные камни?

У библиотек есть одна проблема. Они работают только с тем языком (в лучшем случае - тем ABI, грубо говоря платформой), под которое они сделаны. И истинной кроссплатформенности особо нет.

Поэтому даже простые либы (вроде каких-то API-клиентов) приходится дублировать на многих языках, чтобы их могли юзать и в браузере, и в мобильных приложениях, и в десктопных, и на сервере (а там вообще целый зоопарк языков).

C++ обладает почти полной кроссплатформенностью, и это "почти" в основном обусловлено браузерами.
Так было до недавних пор. А сейчас есть wasm.

Отсюда идея, писать такие библиотеки на C++, юзать их в разных языках, делая обертки, а в браузерах (и Node.js) - юзать с помощью компиляции в WASM.
Один код, куча платформ. Ну и бонусом - быстродействие (далеко не везде, но местами полезно).

Так вот, какие тут подводные камни кроме:
1. C++ сложный язык, мало специалистов.
2. Несколько коряво, что модуль WASM надо сначала подгрузить и выполнить, и весь код должен этого ждать и лишь потом с ним работать.
3. Ну и самое очевидное: в WASM не особо удобно работать с DOM, BOM. Но раз уж мы хотим кроссплатформенность, то это само собой. Мы можем все это делать в обертках.
  • Вопрос задан
  • 227 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы