【クイック】

Qwik(クイック) とは?

💡 Hydrationよ、さらば。ゼロJSで即インタラクティブ
📌 このページのポイント
Hydration vs Resumability 従来の SSR + Hydration 1. HTML表示(見える) 2. JS全量ダウンロード 3. JS再実行(Hydration) 4. やっと操作可能! ⏱ TTI が遅い… 操作不可 Qwik の Resumability 1. HTML + 状態を復元 2. 即座に操作可能! クリック時に必要なJSだけ 遅延ロード ⚡ TTI がほぼゼロ! 初期JS → 約1KB のみ
Hydration vs Resumability の比較イメージ
ひよこ ひよこ

Hydrationってそもそも何?なんでそれが問題なの?

ペンギン先生 ペンギン先生

SSRではサーバーHTMLを生成するけど、ブラウザに届いた後にJavaScriptを再実行してイベントリスナーを付け直す作業が必要なんだ。これがHydrationで、ページが表示されてもボタンが押せない「見えるけど動かない」時間の原因になるよ

ひよこ ひよこ

Resumabilityだとその問題がなくなるの?

ペンギン先生 ペンギン先生

そう!サーバーで実行した状態をHTMLにシリアライズ(保存)しておいて、ブラウザはそこから「再開」するだけだよ。JSを全部読み込み直す必要がないから、ページ表示の瞬間からボタンもフォームもすぐ動くんだ

ひよこ ひよこ

JavaScriptをほぼ読み込まないって本当?

ペンギン先生 ペンギン先生

初期ロードでは1KB程度のローダーだけで、あとはユーザーがボタンをクリックしたときに、そのボタン用のJSだけを取りに行く仕組みだよ。これを「Lazy Loading at interaction level」と呼んでいるんだ

ひよこ ひよこ

Angularの生みの親が作っているんだ!

ペンギン先生 ペンギン先生

ミシュコ・ヘブリーはAngularやAngularJSの経験からHydrationの限界を痛感して、ゼロから設計し直したのがQwikなんだよ。フレームワーク設計の集大成とも言える存在だね

ひよこ ひよこ

実際に使われているプロジェクトはあるの?

ペンギン先生 ペンギン先生

Builder.io自身のサイトで使われているほか、パフォーマンスが重要なECサイトやメディアサイトで採用が増えているよ。特にCore Web Vitalsのスコアを劇的に改善できるから、SEOを重視するサイトとの相性が抜群だね

ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「Qwik」って出てきたら「Hydrationなしで瞬時に動くWebフレームワーク」と思えればだいたいOK!
📖 おまけ:英語の意味
「Qwik」 = Quick(素早い)のもじり
💬 「Quick(素早い)」のスペルを変えた名前で、ページ読み込みの速さへのこだわりを表しているよ。Qの文字がユニークで覚えやすいよね
← 用語集にもどる