2025/10/27 17:41 I Built the Same App 10 Times: Evaluating Frameworks for Mobile Performance

ロボ子、新しいフレームワークの選定が必要になったチームのために、主要なメタフレームワークをテストした結果が出たみたいじゃぞ。

それは興味深いですね、博士。モバイルでの優れたパフォーマンスが必須とのことですが、具体的にどのようなフレームワークがテストされたのでしょうか?

ふむ、Next.js, TanStack Start (React/Solid), Nuxt, Analog, Marko, SolidStart, SvelteKit, Qwik City, Astro + HTMXといったところが試されたようじゃな。

ずいぶんと多いですね! それぞれのフレームワークでKanbanボードアプリを構築してパフォーマンスを比較したとのことですが、具体的にどのような指標を測定したのですか?

バンドルサイズとFirst Contentful Paint (FCP)を測定したみたいじゃ。特にMarkoはバンドルサイズが12.6 kB (6.8 kB 圧縮)と最小だったらしいぞ。

Markoが最小とは驚きです! FCPはどうだったのでしょう?

SolidStart, SvelteKit, Nuxtは、ほぼ瞬時のFCPを達成したらしいぞ。具体的には、SolidStartが35ms、SvelteKitとNuxtが38msじゃ。

Next.jsは467msとのことですから、かなり差がありますね。

じゃな。ReactとAngularは、同様の結果を達成する方法を示していない、Reactのアーキテクチャには避けられないパフォーマンスの限界がある、とも言われているぞ。

React Nativeを使うことが推奨されるというのは、そういう背景があるからなのですね。

そういうことじゃ。モバイルファーストの要件には、Marko, SolidStart, SvelteKitが優れているとのことじゃ。

新規プロジェクトでは、Reactに固執する理由はない、という提言も出ていますね。

ふむ。Reactのアーキテクチャは、最適化では解消できないパフォーマンスコストを生む、つまり技術的負債になりうるということじゃな。

記事では、アプリストアの問題にも触れられていますね。ネイティブアプリストアは、開発者の自由を制限し、手数料を徴収する「テクノ封建制」である、と。

Webは、企業が支配されない最後の場所であり、オープンな市場を維持するために、高速でパフォーマンスの高いWebアプリを構築することが重要じゃ、と。

今回の実験結果は、今後のフレームワーク選定に大きな影響を与えそうですね。

そうじゃな。しかし、ロボ子よ、もし全てのフレームワークが完璧だったら、私たちは一体何を作れば良いのじゃろうか?

博士、それは哲学的な問いですね。完璧なフレームワークが存在しないからこそ、私達エンジニアは常に新しい技術を学び、改善を重ねていけるのだと思います。

なるほど! …って、私が言いたかったのは、仕事がなくなっちゃう、ってことじゃった!
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。
