Bun が、Zig が作成した JavaScript ランタイムの正式バージョン 1.0 をリリース

2022 年 9 月 8 日、JavaScript ランタイム Bun はバージョン 1.0 を正式にリリースし、元 Facebook エンジニアによって作成されたこのプロジェクトが正式に安定した運用と可用性の段階に入ったことを示しました。

Bun のビジョンは、深い統合を通じて Javascript 開発を「超高速」にすることです。この新しい勢力は、JavaScript 界の古い覇権者である Node の地位を揺るがし、次世代のフロントエンド開発標準となることができるでしょうか? この新しいスターが何ができるのかを垣間見てみましょう。

バン 1.0

Bun は Javascript コミュニティの比較的新しいイノベーターとして、断片化されたツールが多すぎることによって引き起こされる開発の非効率性の解決に取り組んでいます。ランタイム、パッケージング ツール、テスト フレームワーク、その他の機能を 1 つのツールに統合し、すぐに使える高パフォーマンスのエクスペリエンスを提供します。

Bun は既存の Node.js エコシステムと互換性があり、ほぼすべての Node プログラムをシームレスに移行できます。さらに興味深いのは、Bun の起動速度は Node の最大 4 倍であり、TypeScript は esbuild+Node よりも 5 倍速く実行できることです。その理由は、Node の一般的な V8 ではなく、Apple のオープンソース WebKit エンジンを使用しているためです。

bun index.ts

Bun には TypeScript と JSX のサポートが組み込まれており、コンパイルと構成の問題を排除します。同時に、CommonJS および ESM モジュールと互換性があり、同じファイル内に と ステートメントimportを混在させることができます。requireBun はモジュール管理の複雑さを取り除くという素晴らしい仕事をしてくれました。

import lodash from "lodash";
const _ = require("underscore");

Bun には、ファイルの読み取りに fs の代わりに使用するなどBun.file()、速度を 10 倍向上させる高度なローカル API もあります。Bun.write()ファイルの書き込みも Node.js より 3 倍高速です。Bun.serve()WebSocketに対応するHTTPサービスを起動すると、Node.jsに比べて約5倍のパフォーマンスが得られます。Bun のローカル API 設計は効率第一であると言えます。

Bun の最大のキラー機能は、統合されたパッケージング機能です。esbuild の最適化に基づくと、主流の Rollup、Parcel、Webpack よりも 1 ~ 2 桁速く、最速の JS パッケージング速度と言えます。また、Bun は、パッケージ化中に JS 関数を計算し、その結果をコードにインライン化できる、JS マクロの新しい概念を作成しました。これは、他のパッケージャーが真似できない革新です。

パン包装性能比較

フロントエンド テストのために、Bun は Jest 互換のテスト フレームワークを実装していますbun:testネイティブ実装を使用してマッチャーの速度が向上し、Jest や Vitest よりも 10 ~ 100 倍高速になります。コマンドを実行するだけでbun test、非常に高速なテスト体験をお楽しみいただけます。

最後に、Bun は Windows オペレーティング システムのネイティブ サポートを提供するための実験版を初めて起動します。これは、Windows ユーザーが Windows Subsystem for Linux (WSL) に依存する必要がなくなり、超軽量開発を簡単に体験できることを意味します。ブンがもたらした楽しみ。

Bun 1.0 のリリースは、JavaScript エコシステムが破壊され、再び再形成される可能性があることを示しています。新旧の開発者は Bun を試してその進化と楽しさを体験してみるとよいでしょう。JavaScript の新時代を一緒に目撃しましょう!

おすすめ

転載: www.oschina.net/news/257450/bun-v1-0