Низкоуровневое программирование в браузере — готовимся использовать WebAssembly

Как говаривал старина Дарвин:«Выживает не сильнейший, а тот, кто лучше приспосабливается к изменениям». Сегодня индустрию гонят вперёд большие нагрузки — разработчики стараются как можно быстрее отображать страницы, пересылать данные на сервер и реагировать на действия пользователя. Уже продолжительное время JavaScript занимает место основного клиентского языка в Web`е, практически всё, что не JavaScript, сегодня так или иначе компилируется в JavaScript. JS, несмотря на свои недостатки, выстоял в своё время под натиском VBScript`а, практически сразил Flash... и вот на горизонте появляется новая не-JS-технология для Client-side`а: WebAssembly! Будучи плодом коллективных усилий всех ведущих игроков рынка — Google, Mozilla, Apple и Microsoft, можно с уверенностью сказать, что эта технология получит широчайшую поддержку и с ней не будет тех проблем совместимости, что были ранее в JS.

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

Вячеслав Лапин, EPAM Systems

Вячеслав Лапин, EPAM Systems

Full-stack Developer и тренер. Начинал с HTML-вёрстки и js-scripting`а в небольшой дизайн-студии. Работал в сфере автоматизации журналистики, банковских CRM-систем, интегратором, а также системным аналитиком.