Twitter: Compose によりデベロッパーの効率性と速度が向上

Twitter は世界で最も広く使われているソーシャル メディア プラットフォームのひとつです。ユーザーは Twitter を通して、世界で起こっている出来事をいつでも把握できます。エンジニアリング チームは、Jetpack Compose を使用してデザイン システムを最新化しました。

Koo の取り組み

Twitter アプリの UI コンポーネントとテーマ設定システムは 10 年ほど前に開発されたもので、メンテナンスに多大な労力を要するレガシー コンポーネントで構成されていたため、エンジニアリング チームは、使いやすく保守が容易で、直感的に実装、拡張、カスタマイズできるステートレス UI コンポーネントを備えた、新しいスケーラブルなデザイン システムを構築したいと考えていました。そこで、Compose を使用することにしました。

チームは、内部の設計システムを通じてコンポーネントを 1 つずつ置き換え、以前のセットアップに依存しない新しい画面に Compose を導入しました。

結果

Compose は、デベロッパーの速度、デベロッパーの満足度、UI コード/コンポーネントの保守性を向上させるという目標に対して、確実な答えを提供しました。Compose の使用を開始した後、Twitter のエンジニアは「一言で言うと、信じられないほど素晴らしい」と述べています。内部的には Android UI 2.0 と呼んでおり、以前のビュー システムに戻ることは非常に困難です。Compose で特に開発したものの効率と速度が向上しました。」

開発と試験運用のスピードが向上したと述べています。「Compose で採用したもののデザイン変更のターンアラウンドは、以前よりもはるかに速くなりました。また、プロダクトの変更では多くのテストを行っていますが、Compose と Kotlin で記述することで、より効率的かつ迅速にテストを実施できるようになりました。」

記述するコードは直感的になるだけでなく、記述も速くなり、読みやすくなります。「また、テーマレイヤは非常に直感的で判読が容易です。通常であれば複数のレイヤで構成されるテーマ オーバーレイを介して属性の定義と割り当てを処理する複数の XML ファイルにまたがる機能を、単一の Kotlin ファイル内で実現できるようになりました。Compose のコンテキスト内でテーマ設定構造全体を再実装するのにかかったのは数日から数週間で、すでに従来のテーマ システムよりもはるかに堅牢で直感的であることが証明されています。」

始める

詳しくは、Compose をご覧ください。