Twitter は、広く使用されているソーシャル メディア プラットフォームの 1 つで、ユーザーはここで何が起こっているのかをいつでも知ることができます。同社のエンジニアリング チームは、Kotlin の null 安全性機能を利用してコードベースのメンテナンス性および Android アプリの信頼性を高めることを目標に掲げ、2017 年に Kotlin を導入しました。
Twitter の取り組み
チームはまず Periscope のコードベースと Twitter アプリの Periscope 機能に Kotlin を導入し、Kotlin を使用する長所と短所をテストしました。チームは生産性とコードの信頼性の向上に感銘を受け、Twitter アプリの他の機能にも Kotlin を段階的に追加していきました。
Kotlin のおかげで、Twitter はアプリのコード量を削減し、ボイラープレートのメンテナンスを最小限に抑え、チームの生産性を向上させることができました。データクラス、シールクラス、デフォルト パラメータなどの言語機能を使用することで、コードの記述量を減らすとともにコードの作成時間を短縮しました。また、Kotlin のスマート キャストにより、チームが作成およびメンテナンスする必要があるコードの量も削減されました。
「Kotlin は使っていて楽しい言語です。ボイラープレートの削減により、作成しなければならないコードの量が少なくなります。」- Andy Fox 氏(Twitter 社シニア ソフトウェア エンジニア)
Kotlin の null 安全性機能により、Twitter のコードの信頼性も向上しました。チームが Kotlin を導入した初期段階で、以前は検出されなかった潜在的な障害が発見されました。コンパイル時の null チェックにより、チームは問題を早期に検出し、null 可能性エラーをプロアクティブに処理できるようになりました。
結果
Kotlin の導入後、チームが継続的に観測しているシステムの健全性とパフォーマンスは良好な状態が続いています。それとともに、チームは実行時ではなくコンパイル時に重大なエラーを検出することで、チームの生産性とアプリの安全性を高めています。生産性とコードの信頼性が向上したことを受けて、チームはフリート、DM リアクション、リストなど、多くの新機能を Kotlin で作成することにしました。
始める
詳細については、Kotlin で Android アプリを開発するをご覧ください。