[DevFest Nantes 2017] Android Architecture Components, une nouvelle façon de faire des appl
Speaker : David Fournier Tous les développeurs Android se sont retrouvés confrontés aux mêmes problèmes : complexité du cycle de vie des Fragments et des Activités ; couplage fort entre l'UI, le modèle et le contrôleur qui rend le code difficilement maintenable et testable ; ou encore verbosité et développement non-objet des bases de données natives Android. Nombre de solutions tierces ont été mises au point par la communauté pour palier à ces problèmes et aujourd'hui, des bibliothèques comme Dagger, Realm ou EventBus sont largement utilisées dans les applications professionnelles. Android Architecture Components, développé directement par les équipes Android, prend en compte tous les soucis inhérents à l'architecture de base d'Android et propose une solution élégante et extrêmement bien intégrée pour les résoudre. Basée sur 4 grands composants interopérables : Lifecycle, LiveData, ViewModel et Room, cette architecture permet de découpler les briques de code afin de créer du code maintenable, extensible et testable. Les Activités ne sont finalement plus que chargées de modifier l'UI, alors que le modèle de données est maintenu en mémoire et facilement partageable entre les éléments graphiques. Enfin, la persistence devient aisée grâce à l'ORM Room qui surcouche le connecteur SQLite natif. Nous vous proposons de passer en revue ces éléments, de montrer comment il est facile de les intégrer dans les applis, et de prouver en quoi ils permettent de produire des applis plus performantes.