Flutterに関してGoogleの技術者が解雇されるなどネガティブな話もあるが、Google I/O 2024で、Flutterの重要なアップデートがいくつか紹介された。以下はその中でも特に注目すべきものである。
- Flutter 3.22 リリース:
- グラフィックス性能の向上: 特にiOSデバイスでのCPU使用率を削減し、アニメーションやUIトランジションの滑らかさを向上させるための大幅な改良が行われた。
- Impellerレンダリングエンジン: Androidでのエクスペリエンスを特に強化するために、新しいレンダリングエンジン「Impeller」が導入された。ImpellerはiOSに導入済みである。また以前からあるレンダリングエンジンはSkiaである。
- WebAssembly(Wasm)サポート:
- Webアプリのネイティブ並みの性能: FlutterはWebAssemblyへのコンパイルをサポートし、Webアプリケーションの性能を大幅に向上させ、ネイティブアプリケーションとほぼ同等の速度を実現する。
- Dart 3.4の機能:
- Dartマクロ: Dartマクロの導入により、JSONのシリアライズなどの複雑なタスクを簡略化し、ボイラープレートコードを減少させることができる。
- 高度なプロファイリングツール: Dart DevToolsがアップグレードされ、高度なプロファイリング機能が追加され、開発者がアプリケーションを効率的に最適化できるようになった。
- Gemini API統合:
- クロスプラットフォーム生成AI開発: Gemini APIが導入され、マルチモーダル生成AIアプリケーションの作成が容易になった。
- スマートTVと組み込みデバイス向けのFlutter:
- モバイルとWebを超えた拡張: Flutterは、LGのwebOSスマートTVオペレーティングシステムの採用例に見られるように、スマートTVやその他の組み込みデバイス向けのアプリケーションを提供するために使用されている。
- ゲーム:
- Flutter Casual Games Toolkit: 2Dゲームを複数のプラットフォームで作成できるFlutter Casual Games Toolkitの強化が行われた。
- 開発者ツールと生産性向上:
- DevToolsのディープリンクバリデータ: WebエクスペリエンスとFlutterアプリの統合を簡単にデバッグできるようにする新しいツールが追加された。
- IDEでのDart Fix統合: 開発者はAPIの移行やコードの調整を直接IDE内で行うことができ、開発ワークフローが効率化された。
これらのアップデートは、Flutterをモバイル、Web、デスクトップ、さらには組み込みデバイスやスマートTV向けの高性能なクロスプラットフォームアプリケーションを構築するための包括的なフレームワークにするためのGoogleのコミットメントを示している (Google I/O 2024) (QuickDev) (Google I/O 2024)。
まとめ
Google I/O 2024ではFlutterの強化策がいくつも発表された。そしてこれまで弱いとされていた大規模アプリの実例としてUniversal Studioでの採用例がデモされたのは大きい。WebアプリとしてもWebAssemblyの採用に伴うパフォーマンス向上も大きい。AI機能を単一コードでiOS, Androidに導入できるのも今回の目玉だ。またLGのテレビへの採用などMobileでもWebでもない分野への広がりも見逃せない。
本家ページ内にFlutter 3.22リリースに関するまとめ(14 May 2024: Google I/O 3.22 release)がある。
総合的にはFlutterを単にiOS, Androidの共通基盤として捉えるのは勿体ないと言う印象を受けた会議だった。