Skip to content

Commit 74b39cb

Browse files
anastasia prasolovaaprasolova
authored andcommitted
[#3426]: Create web-assembly.md
Signed-off-by: anastasia prasolova <[email protected]>
1 parent 6ef73d0 commit 74b39cb

File tree

1 file changed

+28
-0
lines changed

1 file changed

+28
-0
lines changed

content/ru/web-assembly.md

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
---
2+
title: Шаблон для определений
3+
status: Feedback Appreciated
4+
category: concept
5+
---
6+
7+
WebAssembly (сокращенно Wasm) — это портируемый формат двоичных инструкций, в который можно скомпилировать высокоуровневые языки: С, С++, Rust и другие.
8+
Это позволяет разворачивать в браузере клиентские и серверные приложения.
9+
Формат представляет собой низкоуровневый байт-код, который можно выполнять в виртуальной машине, которая, как правило, интегрирована в браузер.
10+
Хотя изначально WebAssembly разрабатывалась для веб-приложений, сейчас она является универсальной средой исполнения и может выполнять и другие приложения, например, программы для IoT и периферийных устройств.
11+
12+
## Какую проблему решает
13+
14+
Долгие годы веб-приложения разрабатывались на основе стека LAMP (Linux Apache MySQL PHP).
15+
Позже царем фронтэнд-разработки стал Javascript, и общепринятыми стали приложения, написанные на NodeJS.
16+
С развитием веб-технологий много внимания получили интерпретируемые языки; обычно они менее производительны, чем компилируемые, даже если технологически являются более продвинутыми.
17+
Хотя JavaScript развился с годами, он все еще ограничен по производительности на задачах, требующих интенсивных вычислений.
18+
Интерпретируемые языки часто испытывают проблемы с производительностью и функциональностью, когда код исполняется в разных средах, поскольку он компилируется под эти среды во время выполнения.
19+
Корректно скомпилированные бинарные файлы, напротив, работают во всех средах одинаково.
20+
В то же время считается, что скомпилированные бинарные файлы меньше подходят для веб-среды.
21+
22+
## Как именно решает проблему
23+
24+
WebAssembly предоставляет разработчикам низкоуровневый двоичный формат, который исполняется с производительностью, близкой к нативной.
25+
Благодаря этому веб-приложения могут эффективно справляться со сложными вычислениями.
26+
WebAssembly позволяет разработчикам создавать веб-приложения, используя знания языков C, C++, Rust и других, которые у них имеются, и благодаря этому переиспользовать существующие кодовые базы и библиотеки.
27+
Помимо этого, модули WebAssembly запускаются единообразно в разных браузерах, операционных системах и устройствах, а это снижает необходимость специфичном для этих платформ коде.
28+
Подводя итог, WebAssembly решает проблемы с производительностью и ограничениями языков программирования, переносимостью кода между средами, безопасностью, объемом кода и временем его загрузки и предоставляет более простую и гибкую среду для разработки веб-приложений.

0 commit comments

Comments
 (0)