👏

Vue Fes Japan 2024 に参加しました!

2024/10/20に公開

はじめに

2024/10/19 に開催された、 Vue Fes Japan 2024 に参加しました。

最近は Vue.js を使っておらず、普段は React (Next.js) を利用しているのですが、Vue.js の最近の傾向やトレンドを知る目的で楽しく参加させていただきました!
スポンサーとしての参加でもあり、ブース対応の合間にてセッションを視聴させていただきました。

聴いたセッション

Oxc - The JavaScript Oxidation Compiler

https://vuefes.jp/2024/sessions/boshen

Oxc とは、 JavaScript, TypeScript 向けのツールコレクションを提供するライブラリとのこと。
リポジトリはこちらです。
https://github.com/oxc-project/oxc

スピーカーは Oxc の作者であり、 Oxc の性能の良さについて熱量高く語っていたのが印象的でした。
Rust を利用したことにより性能が非常に高くなっており、Rust は勉強すべき!と推していました。

個人的には Linter あたりが導入しやすそうなので、試しに使ってみたいです。

Gems of Nuxt: 8 Features Every Nuxt Developer Should Know!

https://vuefes.jp/2024/sessions/alexander-lichter

Nuxt の知っておくべき機能について、丁寧に紹介してくれるセッションでした。
スピーカーが非常にユニークな方で話術に長けており、英語もかなり聞き取りやすかったです。
(いずれセッション動画が上がると思うので、ぜひ観てみてほしいです)

セッションとしては、 Nuxt 4 になって変更になるポイント(config のオプション指定やディレクトリ構造など)から始まりました。

そして、
Nuxt Script というサードパーティスクリプトの紹介、
getCachedData というキャッシュを活用できる機能の紹介や、
OpenAPI route の自動生成の方法、Route Rules の活用方法などなど、
Vue.js をより便利に利用する機能について 実例を交えて説明してくれました。

Demystifying Vite Internals

https://vuefes.jp/2024/sessions/nozomu-ikuta

https://speakerdeck.com/nozomuikuta/demystifying-vite-internals

現在 安定版である Vite 5 のコア部分について、
どのように dev サーバが起動していくのか、内部が何をどう処理しているのかを共有するセッションでした。
スピーカーがだいぶ頑張って時間内に収まるように話すトピックを厳選してくれていましたが、ぜひどこかの機会で他の話も伺いたいところです。

ざっくりいうと、高速に dev サーバが起動できるのは、起動時に アプリケーションコードをビルドしていないからで、リクエストを受け付けるたびに 該当箇所をビルドして応答を返す仕組みになっているようです。

その他にも、どのタイミングでどんな機能がバンドル処理、ビルド処理を担当している…という内部処理の詳しい話をしてくださっていたので、登壇資料を改めて確認したいです。

Deep dive into Nuxt Server Components

https://vuefes.jp/2024/sessions/wattanx

https://speakerdeck.com/wattanx/deep-dive-into-nuxt-server-components

Nuxt.js における Server Component についてを共有するセッションでした。

server side rendaring, client side rendaring, Hydration というワードを聞き、
普段 Vue/Nuxt に触れていないため、「React と同じような単語で呼ぶんだな〜」と素朴に感じたりしました。
しかし、その作りはかなり違うようです。

Next.js における Server Component は サーバ側ですべてをビルドしてからクライアントへ返却しますが、 Nuxt.js では一度空っぽの HTML をクライアントへ返却し、あとから JavaScript が Hydration されるようです。

Next.js で Server Component はインタラクティブな操作を受け付けできませんが、
Nuxt.js では インタラクティブな操作を受け付けることができそうです。

言葉は同じですが、その性質はかなり異なっており、 React と Vue.js の反復横跳びは混乱しそうです。

おわりに

Vue Fes Japan には去年も参加させていただきましたが、コミュニティの熱量も高く、非常に有意義で楽しいカンファレンスでした。
日本で開催してくれているという点についても、ありがたい限りです。

今回の Vue Fes Japan では 様々なセッションで Rust の話が出てきていて、Vue.js (JavaScript) 界隈 における Rust の重要性が増していることを実感しました。

とりあえず英語のリスニング能力を鍛えて、来年の英語セッションを同時通訳なしで聴けるように備えたいです!

Discussion