Twitter は世界で最も広く使われているソーシャル メディア プラットフォームのひとつです。ユーザーは Twitter を通して、世界で起こっている出来事をいつでも把握できます。エンジニアリング チームは、Jetpack Compose を使用してデザイン システムの最新化 を開始しました。
取り組み
Twitter アプリの UI コンポーネントとテーマ設定システムは約 10 年前に開発されたもので、保守に多大な労力を要するレガシー コンポーネントで構成されていました。エンジニアリング チームは、使いやすく保守しやすいステートレス UI コンポーネントを備え、直感的に実装、拡張、カスタマイズできる新しいスケーラブルなデザイン システムを構築したいと考えていたため、Compose を使用することにしました。
チームは、内部デザイン システムを通じてコンポーネントを 1 つずつ置き換え、レガシー セットアップに依存しない新しい画面に Compose を導入しました。
結果
Compose は、デベロッパーのベロシティ、デベロッパーの満足度、UI コードとコンポーネントの保守性を向上させるという目標に対して、確かな答えを提供しました。Compose の使用を開始した後、Twitter のエンジニアは 「一言で言うと、素晴らしいです。社内では Android UI 2.0 と呼んでいますが、レガシービューシステムに戻るのは非常に困難です。Compose で特別に開発したものの効率と 速度が向上しました。」と述べています。
開発とテストのスピードが向上しました。「Compose で採用したものの デザイン変更のターンアラウンド は、以前よりもはるかに 速くなりましたまた、プロダクトの変更を頻繁にテストしていますが、Compose と Kotlin で記述すると、より迅速かつ簡単にテストできます。」
記述するコードは直感的であるだけでなく、記述も速く、読みやすくなりました。 「さらに、テーマ設定レイヤがはるかに直感的で読みやすくなりました 。通常であれば複数のレイヤで構成されるテーマ オーバーレイを介して属性の定義と割り当てを処理する複数の XML ファイルにまたがる機能を、単一の Kotlin ファイル内で実現できるようになりました。Compose のコンテキスト内でテーマ設定構造全体を再実装するのに数日から数週間しかかからず、レガシーテーマ システムよりもはるかに堅牢で直感的であることがすでに証明されています。」
始める
Compose の詳細をご確認ください。