Hall A | Hall B | Room 1 | Room 2 | Room 3 | Room 4 | Room 5 | Room 6 | Room 7 | ||
---|---|---|---|---|---|---|---|---|---|---|
10:00 | JAENHall A・20min ウェルカムトーク | |||||||||
10:20 | ||||||||||
11:20 | ||||||||||
11:50 | 🍱 ランチ 🍱 (60min) | |||||||||
12:50 | ||||||||||
14:00 | ||||||||||
14:50 | ||||||||||
15:40 | ||||||||||
16:00 | ||||||||||
16:30 | ||||||||||
16:40 | ||||||||||
16:50 | ||||||||||
17:10 | ||||||||||
17:20 | ||||||||||
18:00 | Hall・120min 🎉 パーティー 🎉 |
Room 1 | Room 2 | Room 3 | Room 4 | Room 5 | Room 6 | Room 7 | |
---|---|---|---|---|---|---|---|
10:30 | |||||||
11:20 | |||||||
11:50 | 🍱 ランチ 🍱 (60min) | ||||||
12:50 | Room 7・50min Reserved | ||||||
14:00 | |||||||
14:50 | Room 4・30min Reserved | ||||||
15:00 | |||||||
15:40 | |||||||
16:50 | |||||||
17:40 | |||||||
18:30 |
JA Room 2 - 2019/02/08 15:40-16:30
アプリアーキテクチャ
MonolithicなAndroidアプリのmoduleを分割し、multi-moduleなアプリケーションを実現することは、最近のAndroid開発において重要な関心事として取り上げられています。Sansan株式会社が提供する名刺管理サービスEightのAndroidアプリケーションでは単一moduleであったアプリケーションのmodule分割を推し進め、現在では数十のmoduleで構成されるアプリケーションとなりました。 このセッションでは実際のアプリケーションのmoduleを分割した経験から、multi-moduleアプリケーションの有用性、効果的な部分とそうでない部分、ベストプラクティスについて説明します。 Multi-moduleアプリケーションの意義とは? * ビルドの高速化 * Kotlinとモジュールの関係 * クリーンアーキテクチャとの関係 * Dynamic feature module ただ分割するだけじゃだめ?multi-moduleで効果的にビルドを高速化するテクニック * 並列処理を効果的に行う構造 * Annotation processingやgradle pluginに気をつける * 高速化が効果的に行われないケース * Multi-module化によってビルドに時間がかかるケース アプリの設計とMulti-module化 * 横方向(レイヤ)でのmodule分割と縦方向(機能)でのmodule分割 * Multi-module化によりクリーンアーキテクチャを促進する * DIを利用してより効果的なmodule間の依存関係を構築する Multi-moduleアプリケーションを実装する * Multi-moduleでのgradleの設定Tips * 実装におけるハマりポイント * Multi-moduleとdagger2 * dynamic deliveryが可能なmoduleとそうでないmodule * moduleをまたいだ画面遷移の実現方法
Sansan株式会社 Eight事業部
組み込みソフトウエアや携帯電話アプリ開発、ス タートアップベンチャーでのWindowsアプリ開発、iOSアプリ開発を経て、2015 年にSansan株 式会社に入社。個人向け名刺管理アプリ「Eight」のAndroidアプリ開発に従事。「Kotlin イン・アクション」の翻訳に参加。