◉ANTIGRAVITY LABEN
記事一覧/アプリ開発
▣ アプリ開発/2026-07-18上級

「Compose ファースト」の後で、View の画面をどの順に移すか — 画面数ではなく変更頻度で決める

Google が Android 開発を Compose ファーストと表明しました。View ベースの画面をどの順で移すかを、画面数ではなく git の変更履歴から決める判断軸と、実際に動かしたスコアリングスクリプトをまとめます。

android29jetpack-compose4migration10antigravity464agents100

✦ プレミアム記事

Google が Android 開発を「Compose ファースト」と表明したという一文を読んだとき、私が最初に思ったのは移行の手順ではなく、順番のことでした。

手元の壁紙アプリには、View ベースのまま何年も動いている画面が残っています。壊れていないので、移行はいつも「今じゃない」に押し流されてきました。私自身、その先送りを何度も選んできた側です。

ただ、新しい API とツールが Compose を軸に設計されると分かった時点で、話の性質が変わります。View 側は壊れないけれど、増築の余地が細っていく。先送りの費用は、静かに、しかし確実に積み上がっていきます。

では、どの画面から動かすのか。この記事は、その一点にだけ答えます。

「Compose ファースト」が実務で意味する一行

表明の中身を、個人開発者にとっての実害まで縮めると、こうなります。

View ベースの画面は今日から明日にかけて壊れない。ただし、これから来る機能は片側にしか来ない。

この一行が効くのは「移行するかどうか」ではなく「移行の締切がいつ来るか」の方です。締切は Google が発表するのではなく、自分が次に作りたい機能が Compose 前提の API を要求した瞬間に、自分の手元で発生します。

つまり移行の優先度は、Google の発表ではなく自分のロードマップと過去の変更履歴から出すのが筋だ、と私はこの場面では考えています。

画面数で数えると、判断できません

最初に私がやりかけたのは、View ベースの画面を数えることでした。これが役に立たないことは、実際に数えてみるとすぐ分かります。

手元の構成を再現した検証用ツリー(Activity 3・Fragment 1・DialogFragment 1・設定系 1 の計 6 画面)に対して、View への依存度だけでスコアを付けると、こうなりました。

画面View 依存度
MainActivity3
DetailFragment2
CategoryActivity2
PaywallDialog2
SettingsActivity2
AboutActivity2

6 画面のうち 5 画面が同点で並びました。依存度は「View をどれだけ使っているか」しか見ていないので、当然です。この数字からは、課金に直結する PaywallDialog と、年に一度しか開かない AboutActivity が区別できません。

区別できない指標で並べると、結局は「全部やる」か「何もしない」の二択になります。私が何年も後者を選び続けた理由が、ここにありました。

✦

ここまでお読みいただきありがとうございます。

この記事の続きを読む

この先には、実装コードやベンチマーク結果など、実務でお役に立てる内容をご用意しています。このサイトは広告を掲載しておらず、サーバーや開発にかかる費用はメンバーの皆様のご支援で成り立っています。もしお役に立てていましたら、ご支援いただけますと大変ありがたいです。

この記事で得られること
✦「そのうち移行する」で止まっていた View 資産を、今週どの画面から着手するかまで具体的に決められる
✦git の変更履歴から画面ごとの移行優先度を出すスクリプトを、自分のリポジトリでそのまま動かせる
✦部分移行で二重管理になる3箇所を先回りして塞ぎ、段階公開の数字で撤退線を引けるようになる
Stripe による安全な決済 · いつでもキャンセル可能
✦

この記事を購入する

この先の内容をすべてお読みいただけます。一度のご購入で、いつでも何度でもアクセスできます。このサイトは広告を掲載しておらず、皆さまのご支援がサーバー費用などの運営を支えています。

または
メンバーシップなら全記事が読み放題 →
シェア

お読みいただきありがとうございます

Antigravity Lab は広告なしで運営しており、サーバー費用などの運営コストはメンバーシップのご支援で賄っています。実装コード・ベンチマーク・本番設計パターンなど、実務でお役立ていただける記事を毎日更新しています。もし読んでよかったと感じていただけましたら、ぜひご覧ください。

  • ✦コピー&ペーストで使える実装コード付き
  • ✦毎日新しい上級ガイドを追加
  • ✦¥580/月 または ¥1,480 の永久アクセス
メンバーシップを見る →

関連記事

▣ アプリ開発2026-09-10
iOS 27 の配信日が決まってから、私が最初に grep したのは AGENTS.md でした
iOS 27 と iPadOS 27 の配信は9月14日です。版数の文字列はソースだけでなく、エージェントが読む設定ファイルにも残ります。両方を数えるスクリプトと、keyword 検索では拾えない一行の話を書き残します。
▣ アプリ開発2026-09-04
iOS 27 の RC から正式リリースまでの5日間 — 画面より先に、初期化の順番と権利の復元を確かめます
OS が入れ替わる直前の短い窓で、エージェントに渡す検証範囲を画面まわりではなく起動経路で切るまでの記録です。ATT と広告 SDK の順序、権利の復元、寸法のハードコード分岐を機械で洗い出す監査スクリプトを添えています。
▣ アプリ開発2026-08-31
有料導線とレビュー訴求が重なるのを、ダイアログではなくゲートで止めています
有料プラン案内・レビュー訴求・リワード広告のダイアログが同じ瞬間に重なった実例から、表示可否の判断を各ダイアログから中央ゲートへ移した設計と、エージェントに不変条件を渡す指示の書き方、CI での機械検査までをまとめました。