GEMINI LABEN
SUNSET — 画像生成モデルの停止まで残り2日です。8月17日に imagen-4.0-generate-001・ultra・fast と Gemini 3 Image 系が止まりますBREAKING — 単なるモデル差し替えでは済みません。generate_images() というメソッド自体が消え、画像生成はテキストと同じ generate_content() を通す形に変わりますHARD — 停止日は非推奨の警告ではなくハードエラーで止まります。期日をまたいで様子を見る運用は成立しませんMIGRATE — 非推奨表では移行先として gemini-3.1-flash-image が示されていますROBOTICS — Gemini Robotics ER 2 が一般公開されました。動画理解・タスクの統括・複数ロボットの協調・安全性が強化されていますLOGS — Interactions API の開発者ログが AI Studio のダッシュボードから閲覧できるようになりましたSUNSET — 画像生成モデルの停止まで残り2日です。8月17日に imagen-4.0-generate-001・ultra・fast と Gemini 3 Image 系が止まりますBREAKING — 単なるモデル差し替えでは済みません。generate_images() というメソッド自体が消え、画像生成はテキストと同じ generate_content() を通す形に変わりますHARD — 停止日は非推奨の警告ではなくハードエラーで止まります。期日をまたいで様子を見る運用は成立しませんMIGRATE — 非推奨表では移行先として gemini-3.1-flash-image が示されていますROBOTICS — Gemini Robotics ER 2 が一般公開されました。動画理解・タスクの統括・複数ロボットの協調・安全性が強化されていますLOGS — Interactions API の開発者ログが AI Studio のダッシュボードから閲覧できるようになりました
記事一覧/開発ツール
開発ツール/2026-08-15中級

新しい iPhone の幅を足す前に、既存の分岐表を Gemini に書き出してもらいました

画面幅の三項演算子が4本のアプリに散った状態で新機種を足す作業を、書き換えではなく分岐表の抽出と網羅検査に切り替えた記録です。抽出だけを Gemini に任せ、判定を決定的なコードに残した理由と実装をまとめます。

gemini104structured-output22ios13個人開発96

プレミアム記事

DefineManager.h を開いて三項演算子をもう1つ足そうとしたところで、手が止まりました。

iPhone Air の 420pt、iPhone 17 Pro の 402pt、Pro Max の 440pt。幅を3つ足すだけの単純な作業のはずでした。ところが同じ形の分岐が4本のアプリに散っていて、どこを直せば全部直るのか、自分でも言い切れませんでした。

個人開発で長く続けているアプリほど、こういう分岐は静かに増えていきます。

先に結論として、書き換えるより先に分岐表を書き出しました

取り得る手は2つありました。

  1. 三項演算子をやめ、幅と値の対応をテーブルに移して分岐を1箇所に集約する
  2. 既存コードには一切触れず、散らばった分岐を表として抽出し、網羅性だけを機械で検査する

私は2番を選びました。理由は3つあります。

  • 4本のアプリを同時に書き換えると、リスクが同じ週に集中します。App Store の審査待ちが重なると、切り戻しの選択肢が細ります
  • 表として抽出するだけなら、既存の実装が1行も変わりません。判断を間違えても失うものがありません
  • そもそも「集約すべきか」を判断する材料が、手元になかったのです。分岐の全体像を見ないまま設計を決めるのは、順番が逆でした

書き換えは、表を見てから決めればよい話でした。

29 箇所の三項演算子が、4本のアプリに散っていました

私が App Store と Google Play に出している壁紙・癒し系のアプリでは、画面幅で余白やセルの列数を切り替えています。長く運用してきたぶん、幅の判定は定数ヘッダに三項演算子として積み上がっていて、その数は 29 箇所ありました。

対象になる幅は、縦持ちのポイント値で次のとおりです。

区分幅 (pt)備考
既存375 / 390 / 393コンパクト〜標準サイズ
既存414 / 428 / 430Plus・Pro Max 系
追加402iPhone 17 Pro
追加420iPhone Air
追加440Pro Max 系の新サイズ

数え上げてみると、怖いのは追加そのものではありませんでした。追加を忘れてもアプリは落ちません。落ちないまま、少しずれたレイアウトが配信されます。

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

この記事の続きを読む

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

この記事で得られること
画面サイズの分岐が散らばったコードに新しい端末を足すとき、どこから手を付ければ安全かを自分で判断できるようになります
LLM に任せてよい工程と、決定的なコードに残すべき工程を、自分のパイプラインで線引きできるようになります
新機種の追加漏れではなく、既存のしきい値が新しい幅を静かに吸い込む取りこぼしを、公開前に見つけられるようになります
Stripe による安全な決済 · いつでもキャンセル可能

この記事を購入する

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

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

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

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

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

関連記事

開発ツール2026-08-10
ヘルプが答えていない質問を、Gemini に問題を作らせて先に見つける
ヘルプやFAQに書いてあるのに問い合わせが止まらないとき、その資料から問いを生成し、資料本文だけで答えられるかを判定する二段構えの点検パイプラインを作ります。呼び出し設計と費用の見積もりまで含めた実装手順です。
開発ツール2026-07-18
難読化されたスタックトレースを Gemini に渡していました — retrace を前段に置くまで、診断はもっともらしく外れ続けます
release ビルドのスタックトレースは R8 で名前が潰れています。それをそのまま Gemini に渡すと、診断は落ち着いた文体のまま外れます。retrace を前段に置き、mapping を versionCode で突合し、復元できないときは断定させない。42件で数え直した記録です。
開発ツール2026-07-14
TTS の継ぎ目を耳に残さない — 長文ナレーションの抑揚と無音境界を整える設計
長文を文単位で割って合成すると、文の変わり目で抑揚がリセットされ継ぎ目が耳につきます。文脈プライミング・ゼロクロス整合・句読点別の適応的無音・冪等なシーム台帳の四層で、繋ぎ目を聞こえなくする設計を実装ごとまとめます。
📚RECOMMENDED BOOKS
大規模言語モデル入門
山田育矢
LLM開発
生成AIプロンプトエンジニアリング入門
我妻幸長
プロンプト
Claude CodeによるAI駆動開発入門
平川知秀
AI駆動開発
※ アフィリエイトリンクを含みます
もっと見る →