Так что же представляет собой эта новая среда выполнения Javascript и чем она отличается от других, таких как Node и Deno. Давайте углубимся в это…
Что такое Бан?
Объединяйте, транспилируйте, устанавливайте и запускайте проекты JavaScript и TypeScript — все в Bun. Bun — это новая среда выполнения JavaScript с собственным сборщиком, транспайлером, средством запуска задач и встроенным клиентом npm. — Официальный сайт Бун.
Bun — это проект с открытым исходным кодом, основанный Джарредом Самнером, бывшим фронтенд-инженером в Stripe. Эта среда выполнения Javascript является альтернативой существующим средам выполнения, таким как Node, Deno и т. д. Она была создана с нуля, чтобы сосредоточиться на трех основных вещах:
- Начинайте быстро (имеется в виду преимущество).
- Новые уровни производительности (расширение JavaScriptCore, движок).
- Отличный и полноценный инструмент (бандлер, транспайлер, менеджер пакетов).
Bun разработан как замена вашим текущим приложениям или сценариям JavaScript и TypeScript — на вашем локальном компьютере, сервере или на периферии. Бан изначально реализует сотни Node.js и веб-API, включая ~ 90% функций Node-API (собственные модули), fs, path, Buffer и многое другое.
Почему Бан?
Цель Bun — запускать большую часть мирового JavaScript вне браузеров, улучшая производительность и сложность вашей будущей инфраструктуры, а также повышая производительность разработчиков за счет более качественных и простых инструментов.
Bun обещает исключительную производительность: его собственные тесты показывают в три раза больше HTTP-запросов в секунду, чем Node.js, и почти в четыре раза больше, чем может предоставить Deno.
Вы можете найти дополнительные бенчмарк-тесты в верхней части сайта Bun.
Как работает Бан?
Bun.js использует движок JavaScriptCore, который обычно запускается и работает немного быстрее, чем более традиционные варианты, такие как V8. Бан написан на Zig, низкоуровневом языке программирования с ручным управлением памятью, находящемся в стадии разработки, в настоящее время в версии 0.9.1.
Большая часть Bun написана с нуля, включая транспилятор JSX/TypeScript, клиент npm, упаковщик, клиент SQLite, клиент HTTP, клиент WebSocket и многое другое.
Почему Бун быстрый?
Ответ для каждой части Bun разный, но есть одна общая тема: «Низкоуровневый контроль Zig над памятью и отсутствие скрытого потока управления значительно упрощает написание быстрого программного обеспечения», — говорит команда Bun.
Начиная
Чтобы настроить базовое приложение Bun, вы можете запустить следующий скрипт в своем терминале:
curl https://bun.sh/install | bash
HTTP-сервер Бана построен на веб-стандартах, таких как запрос и ответ.
// http.js
export default {
port: 3000,
fetch(request) {
return new Response("Welcome to Bun!");
},
};
Запустите его с булочкой:
bun run http.js
Затем откройте в браузере http://localhost:3000.