本日、Jetpack Compose 1.0 のリリースから 5 周年を迎えました。2021 年 7 月 28 日に発表されたバージョン 1.0から、最新の1.11 リリースまで、API は長年にわたって大幅に進化してきました。この節目を祝いたいと思います。
1.0 リリースの正式発表の際、Google は Android でネイティブ インターフェースを構築するための、よりシンプルで高速かつ直感的な方法を提供することを約束しました。振り返ってみると、Compose はその約束を果たしただけでなく、Android エコシステムを完全に変革しました。現在、上位 1,000 個のアプリの 68% 以上が本番環境で使用しています。
履歴
過去 5 年間、Compose は着実に成長してきました。初期の頃、基本的な Box、Row、Column を使用してレイアウトを構築する方法を説明しました。現在、Compose はモバイル デバイスだけでなく、Compose for TV、WearOS、Glance for Widgets、さらにはJetpack Compose Glimmer を使用したディスプレイ グラスなど、他のフォーム ファクタでも動作するように拡張されています。
Google は、Jetpack のエンジニアリング リードの Clara Bayarri 氏、チームの元リードの Romain Guy 氏と Chet Haase 氏、シニア エンジニアリング ディレクターの Tor Norbye 氏とともに、Android Developers Backstage のエピソードを収録しました。このエピソードでは、Compose の歴史と開発の初期について説明しています。
振り返り
Compose の始まりは、現在のものとは大きく異なっていました。Android チーム内では、2 つのプロジェクトが並行して進められていました。
当時、Views ツールキット チームは、開発速度を向上させ、デベロッパーがアップデートを簡単に導入して管理できるようにするため、UI ツールキットをライブラリにバンドル解除することを検討していました。一方、別のチームは、Kotlin 内に XML を埋め込んで宣言型レイアウトを構築するという斬新なアイデアに取り組んでいました。これは次のようなものでした。
これらの 2 つの取り組みが統合され、現在のものが誕生しました。これは、コンパイラ プラグイン、ランタイム、Kotlin の機能を活用した完全な宣言型 UI ツールキットです。
@Composable fun Newsfeed(stories: List<Story>) { LazyColumn { items(stories) { story -> Card { val author = story.author Image(painterResource(author.profilePhoto), contentDescription = author.name) Text(author.name) Text(story.content) if (story.hasCommentsEnabled()) { for(comment in story.comments) { Text(comment.mainContent) } } } } } }
コミュニティの皆様には、早い段階からご協力いただきました。2021 年より前、Compose にはプレアルファ版があり、デベロッパーの課題を解決するのに適していることを確認できました。
特に印象に残っているのは、Android Dev Challenge です。Google は、Compose を使用して 4 つの異なるタスクを構築するようコミュニティに呼びかけました。フィードには、子犬のアプリ、時計、天気アプリが投稿され、1.0 リリースの形成に役立つ直接的なフィードバックを多数いただきました。
Compose は進化を続けており、Material 2 コンポーネントのセットから始まり、現在は Material 3 Expressive をサポートしています。
今後の対応
現在、Compose 1.11 が最新バージョンで、1.12 が間もなくリリースされます。5 年前の 1.0 と比べて大幅に機能が強化されています。今年、Google は FlexBox、Grid、MediaQuery、Styles など、よりアダプティブな API を導入しました。これらの API を使用すると、Compose でアダプティブなプレミアム UI 開発を次のレベルに進めることができます。
Google は Google I/O 2026 で、Compose ファーストになったことを発表しました。つまり、今後の UI 開発はすべて Compose でのみ行われ、Views ツールキットはメンテナンス モードになります。マテリアル デザインも完全に Compose に 重点を移し、findViewById era の終焉を告げています。
コミュニティは Compose の中心
長年にわたり、Compose のクリエイティブな使用例で Google を鼓舞してくださった皆様に感謝いたします。ここでは、素晴らしい成果をいくつかご紹介します。Jetbrains は、Compose Multiplatform を使用して Compose をプラットフォーム間で動作するように拡張し、デスクトップ、iOS、ウェブのデベロッパーも Compose のメリットを享受できるようにすることで、Google の Compose の優れたパートナーとなっています。
Google は、 JetpackCompose.app’s Dispatch、 AndroidWeekly、 jetc など、人気のニュースレターをフォローして、Android デベロッパーが Compose と Android の最新情報を把握できるようにしています。
もう 1 人の優れたコントリビューターは sinasamaki 氏です。この楽しいリボン修飾子やグリッチ効果など、Compose を使用して多くの楽しいエクスペリエンスを作成しています。
Saket Narayan 氏は、Compose 用の便利なツール(パンとズーム操作のサポートと大きな画像の自動サブサンプリングを特徴とするライブラリ telephoto や、インタラクション アニメーションを簡単にテストできる最新のライブラリ Touch Robot など)の作成において、常にインスピレーションを与えてくれます。
paparazzi.gif(end = 3_000) { DebitCard( Modifier.testTag("card") ) val touchRobot = rememberTouchRobot() LaunchedEffect(Unit) { touchRobot.onNode(hasTestTag("card")).performGesture { draw( path = createAndroidHeadPath(), duration = 3.seconds, ) } } } /** A path drawing the Android head. */ fun createAndroidHeadPath(bounds: Rect): Path = TODO() |
|
Jake Wharton 氏は、Compose を革新的な方法(molecule など)で使用し、mosaic を使用してターミナル用の UI を Compose で構築しています。Chris Banes 氏は、長年にわたり多くの Compose ライブラリを構築してきました。最近のお気に入りは、背景をぼかすための Haze です。また、 Akshay Chordiya 氏、 Huyen Tue Dao 氏、 Katie Barnett 氏など、多くの Android Google Developer Experts が Compose の成功に貢献しています。ただし、これは個人を選ぶものではありません。Compose コードベースには多くの優れたコントリビューターがおり、楽しい例、ライブラリ、詳細な講演で Google を鼓舞してくださっています。 コミュニティがなければ、Jetpack Compose は今日の成功を収めることはできなかったでしょう。
次の 5 年間もよろしくお願いいたします。
Jetpack Compose は、実験的なアイデアから Android UI 開発の標準へと成長しました。Google のツールキット チーム全体と、ライブラリを作成し、バグを報告し、宣言型 UI の可能性を広げてくれた世界中のデベロッパー コミュニティに感謝いたします。
今週、世界各地で対面式の誕生日パーティーを開催し、7 月 30 日 13:00 UTC に Android デベロッパー YouTube チャンネルでライブ「誕生日パーティー」を開催します。 この間、Compose について話し合い、皆様からの質問にお答えします。
次の 5 年間もよろしくお願いいたします。ハッピー コーディング!
-
プロダクト ニュースJetpack Compose のリリースから 5 年近くが経ちましたが、Google は、さまざまな Android デバイスで優れた UI を構築するために必要なすべての機能、パフォーマンス、ツールを提供することに投資してきました。
Nick Butcher • 2 分で読了 -
プロダクト ニュース本日、Jetpack Compose 2025 年 12 月リリースが安定版になりました。これには、コア Compose モジュールのバージョン 1.10 と Material 3 のバージョン 1.4 が含まれており、新機能と大幅なパフォーマンスの改善が追加されています。
Nick Butcher • 6 分で読了 -
プロダクト ニュースAndroid Studio Quail 2 が安定版になり、本番環境で使用できるようになりました。同時エージェント ワークフロー、ネイティブに統合されたメモリリーク プロファイリング、コンテキスト認識型のクラッシュ修復により、IDE が変わります。
Android 開発に関する最新の分析情報を毎週メールでお届けします。