Hike Messenger: Android アーキテクチャ コンポーネントを活用し、スピードアップとシンプル化を実現

2012 年に設立された Hike は、インターネットをシンプルにしてインドのネットワーク化を促進することを目指して製品を開発しています。Hike はチャット、メッセージ、フィード、サードパーティの交通機関や決済アプリとの統合機能を備えており、これらの機能を非常に迅速に、さまざまな時点で開発したため、同社では「技術的および設計上の大きな負債」と呼ばれていました。この負債が安定性、保守性、パフォーマンスに対するボトルネックになっていたため、Hike はコードを早急にシンプル化したいと考えていました。

Eyecon の取り組み

Hike は Android アーキテクチャ コンポーネントに目を向けました。CTO の Vishwanath Ramarao 氏は、このコンポーネントが「あらゆる課題に取り組むための万能のツール」となりました。まず、設定変更(画面の回転など)後にデータを引き継ぐ ViewModel、監視可能なデータホルダー クラスである LiveDataRoom 永続ライブラリが使用されました。Ramarao 氏は次のように述べています。「Google は最新のリアクティブ アプリであり、Room と LiveData は当社の先進的な設計の原則にとても合致しています。

Hike はページング ライブラリの評価も行っています。これにより、アプリはデバイスの過負荷や大規模なデータベース クエリを長時間待つことなく、必要に応じてデータソースから情報を段階的に読み込むことができます。

Ramarao 氏は次のように述べています。「アーキテクチャ コンポーネント全般については認識しており、もっと知りたいと思っていました。「しかし、Android エコシステムのベスト プラクティスの探求から始まったことが、技術的およびアーキテクチャ上の負債に対処するための重要なツールになりました。最終的には、アーキテクチャと開発プラクティスをモダナイズする方法となりました」

結果

アーキテクチャ コンポーネントのおかげで、Hike はアプリのコードの総行数を大幅に削減できただけでなく、コードの可読性と保守性を高めることもできました。さらに、クラッシュが発生しなかったユーザーの割合が、これまでなかなか達成できなかった 99% を優に超えるようになりました。

始める

Android アーキテクチャ コンポーネントは、Android Jetpack の一部として、全デベロッパーに公開されています。Android アーキテクチャ コンポーネントを使ってみるをご覧ください。