話題のBunが気になる

1.7K Views

September 20, 23

スライド概要

「第11回LT練習会(仮)」の登壇資料
https://gaji-lt.connpass.com/event/289439/

Bunが気になったのでいろいろ調べてみました

profile-image

よろしくおねがいします!

シェア

またはPlayer版

埋め込む »CMSなどでJSが使えない場合

関連スライド

各ページのテキスト
1.

話題のBunが気になる 第11回LT練習会(仮) 2023/09/20(水) きらぷか(@kira_puka)

2.

きらぷかとは? きらぷか (@kira_puka) ● ● 会社: 合同会社めもらば 仕事: Web/スマホアプリの受託開発 ○ ● Nuxt.js / Node.js / Flutter 趣味: 読書と個人開発 積読ハウマッチ SSSAPI 総額がわかる書籍管理アプリ スプシのAPI化サービス

3.

Bunっていう 爆速な肉まん があるらしい

4.

アジェンダ 1. Bunとは? 2. Bunでなにができる? 3. Bunはなぜはやい? 4. 特に気になるのは...

5.

Bunとは? ● 新しいJavaScript実行環境 / runtime ○ ● Node.js / Deno いろいろできるAll in One toolkit (らしい) ● 爆速!! (らしい) 引用) Bun — A fast all-in-one JavaScript runtime(https://bun.sh/)

6.

Bunでなにができる? 必要な道具一式を用意 ● Runtime(Node.js互換) … JavaScript/TypeScriptの実行 ○ ● TypeScriptの直接も実行できる Package Manager … npm / yarn / pnpm ○ Workspace機能もあり、monorepoもOK ● Test Runner … jest / vitest ● Bundler … webpack / esbuild / babel

7.

Bunはなぜはやい? 爆速にするための仕組みが盛々 ● Zigでの実装がはやい ● JavaScriptエンジンのJavaScriptCoreが速い ● バイナリのlockfile ● 賢いキャッシュのパッケージマネージャー 1. 2. [参考] なんでbun installは速いのか? [参考] Bunファーストインプレッション - JavaScriptランタイム界に”赤壁の戦い”を!

8.

特に気になるのは... Node.js APIの互換性はどこまで? 実際の速度やCPUやメモリは?

9.

特に気になるのは...|互換性 ある程度サポートされているが、完全ではない 利用するパッケージによっては対応してないかも? 引用) Node.js compatibility – Runtime | Bun Docs (https://bun.sh/docs/runtime/nodejs-apis)

10.

特に気になるのは...|パフォーマンス フレームワーク(Fastify)だと、 Node.jsが一番パフォーマンスがよい 引用) Node.js vs Deno vs Bun: Fastify hello world server benchmarking | Medium Bun v1.0.1 / Node.js v20.6.0 / Deno v1.36.4

11.

まとめ ● ◎とにかく爆速の仕組みが盛々 ○ ● ◎All-in-OneなのでBunですべてできる ○ ● npm + esbulid + jest △Node.js APIの互換性はまだ完全ではない ○ ● Zig / JavaScriptCore / バイナリlockfile / キャッシュ戦略 利用するパッケージによってはそのまま置き換えできないかも △FWによってはBunのパワーを引き出せないこともある ○ Native APIなら爆速 Bunはv1.0が出たばかり これからかなり期待大

12.

ご清聴 ありがとうございました

13.

おまけ

14.

Bunとは? Node.jsを 完全に置き換える!! 引用) What is Bun? | Bun Docs https://bun.sh/docs

15.

Node.jsとBunの内部構造 1. [引用] Bunファーストインプレッション - JavaScriptランタイム界に”赤壁の戦い”を!

16.

特に気になるのは...|パフォーマンス 素のHTTP APIだと、 Bunが一番パフォーマンスがよい 引用) Node.js vs Deno vs Bun: Native HTTP hello world server benchmarking | Medium Bun v1.0.0 / Node.js v20.6.0 / Deno v1.36.4

17.

特に気になるのは...|パフォーマンス 引用) Bun + Vite を試してみる | Zenn Bun v1.0.1 / Node.js v20.5.1 / Vite v4.4.9

18.

個人開発で作ったアプリ|積読ハウマッチ 積読ハウマッチ ● ● 総額がわかる書籍管理アプリ Nuxt.js+Firebase製

19.

個人開発で作ったアプリ|SSSAPI SSSAPI ● ● GoogleスプレッドシートのAPI化サービス Nuxt.js+Express.js+Firebase