Content

こんにちは。Androidエンジニアのキリンです。

私は普段通りUI作業はAndroid View(XML)でやってましたが、新しいAndroid関連の技術記事だとJetpack Compose を前提とした内容が増えていると感じ、今後は従来のAndroid View(XML)から Compose が主流になっていくのではと考えました。

なので私もその流れにいつでも乗れるよう、UdemyからJetpack Compose講座を購入して体験してみました。
本記事は私がJetpack Compose使ってみて感じたことを紹介しようと思います。
すでにJetpack Composeを使ってる方もまだ未活用の方もいらっしゃると思います。

改めてJetpack Composeについて考えてみる記事になると嬉しいです。

Jetpack Composeとは?

 

従来の Android View(XML)による命令型 UI 開発とは異なり、
Jetpack Compose は宣言的 UI を採用しています。

状態を変更するだけで UI が自動的に更新されるため、
Kotlin の簡潔な文法と相まってUI 実装の見通しが良くなり、
開発スピードの向上が期待できます。

Jetpack Compose活用して作ったアプリ

私がJetpack Composeを使って作成したアプリは5つです。

  • プロフィール紹介アプリ
  • Tip計算機アプリ
  • 映画紹介アプリ
  • メモアプリ
  • 本検索アプリ

購入した講座は「Android Jetpack Compose: The Comprehensive Bootcamp」です。
講座リンク

 

Jetpack Compose活用した感想

宣言的UIパワー

既存のAndroid View(XML)を定義し、findViewByIdでビューを探し、リスナーを付ける複雑なプロセスがなくなりました。 コードがUIであり、慣れていくと既存のAndroid View(XML)より開発速度が速くなりそうです。

Composable関数がすごい

Composeの基本単位であるコンポーザブル関数の設計方式が非常に直観的でした。

小さなコンポーザブル関数をレゴブロックのように組み合わせて複雑な画面を作っていく方法が良かったです。特に、カスタムビューを作る際に必要だった相続や複雑なライフサイクル管理が必要なく、開発負担が減った気がします。

開発中に別途の機器やエミュレータがなくてもコードを修正するとすぐに結果画面を見ることができる@Preview機能は、UIデザインと実装のフィードバックループを短縮させました。

すべてKotlinで実装できる

レイアウト構造、スタイル、アニメーション、ビジネスロジックまですべてKotlinファイル内に統合できました。

Modifierについて

Modifierは、ComposeでUI要素(Composable)の形、動作、位置を決定し、変更するのに使用される核心的な要素です。

Modifierはチェーン方式で連結して使用されてます。

例)

こういう風にコードを書くとpaddingを設定してから背景の色を設定しているので背景色が余白を含め全領域に反映され、全体がクリック可能になります。
背景を先に設定してpaddingを設定するとクリック可能な箇所はpaddingされた部分外になります。

つまり、適用順序が結果に影響を与えるので複雑なカスタムレイアウトや性能最適化のためには、Modifierの使い方と内部的なレイアウト段階(測定および配置)に対する深い理解が必要だと思いました。

終わりに

Jetpack Composeを経験することで、私は宣言的(Declarative)思考方式に転換する一歩を踏み出しました。今後すべてのプロジェクトに根本的な効率性を提供できるように頑張りたいと思います。

もし、まだJetpack Composeを経験していない、または興味がある場合は、経験してみることを強くお勧めします。

ComposeはアンドロイドUI開発の未来であり、短期間の学習だけでも既存方式の限界を超える圧倒的な開発生産性を経験することになると思います。 この新しいパラダイムが皆様の開発能力をさらに一段階高めてくれると思います!

We are hiring!

現在、システムサポート株式会社ではAndroid/iOSエンジニアを募集しております。
一緒にモバイルアプリチームを発展していく仲間を心よりお待ちしておりますので、何なりとお問い合わせください!

キャリアサイト: コチラ
doda / リクルートなどでも公開しておりますのでご確認ください。

  • 必須要件
    • Swift、Kotlinいずれかを用いたモバイルアプリ開発の経験
  • 歓迎条件
    • Webアプリケーション開発経験をお持ちで自己研鑽にてSwift、Kotlinを用いたモバイルアプリ開発を経験されている方
  • 魅力
    • MAU200k+を誇る規模のモバイルアプリ開発なども行えるSIerとしては珍しいtoC向けアプリもあります!
    • また、DroidKaigiやiOSDCへの参加なども積極的に推奨しているため技術力向上も狙えちゃいます!
    • リモートワーク+フルフレックスなどWLBも充実してますので是非是非ご応募ください!

2025年12月5日 Jetpack Composeを使ってみた

Category モバイル

ご意見・ご相談・料金のお見積もりなど、
お気軽にお問い合わせください。

お問い合わせはこちら