Перейти к содержанию

Rust и WebAssembly: вычисления в браузере

Анализатор «Мера» — общий пример этой серии. От исходной модели постепенно переходим к готовому договору выпуска. Каждый урок раскрывает один результат; кодовые фрагменты в статьях поясняют изменения в полных исходниках архива.

Предпосылки: основы HTML и JavaScript, работа с каталогами и командной строкой. Среда примеров: Rust 1.99.0, edition 2021, wasm-bindgen и CLI 0.2.129; браузерные ES modules.

Урок Результат
1. Задача для WebAssembly и контракт анализатора Выделить чистое вычисление и определить точный смысл статистики текста.
2. Строки, заимствование и владение в Rust Обработать UTF-8 без копирования каждой строки; различить байты и символы.
3. Result и ошибки на границе JavaScript Передавать ошибки входных данных как контролируемый результат, сохраняя контракт.
4. Сборка Rust-модуля для браузера Связать cargo target и wasm-bindgen CLI и описать полный состав браузерного пакета.
5. Асинхронная загрузка и интерфейс анализатора Загрузить модуль один раз, показать состояние и вывести результат безопасно.
6. Числовые массивы и стоимость передачи данных Построить гистограмму длин строк с понятной границей копирования.
7. Web Worker и актуальный результат вычисления Перенести вычисление в отдельный поток, сопоставляя сообщения с запросами.
8. Запасная реализация с тем же контрактом Сохранить результат при недоступности Wasm и явно показать выбранный движок.
9. Как сравнивать JavaScript и WebAssembly Описать измерение всей операции, отделив прогрев, загрузку и передачу данных.
10. Передача Wasm-модуля в веб-проект Подготовить состав артефакта, ограничения входа и договор совместимости без публикации.

Скачать исходники. Все курсы. Партия из 100 уроков.

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