Refactoring du projet 3 en MVVM (qui était initialement en MVC), avec la plupart des bonnes pratiques associées au MVVM. C'est une bonne base pour apprendre le MVVM puisque vous connaissez déjà le projet. Je n'ai pas beaucoup touché les XML (je les ai juste un peu remis au goût du jour), les seules différences concernent la transformation en architecture MVVM, c'est à dire les Activity / Fragment et les nouveaux ViewModels !
Bonne découverte !
- Architecture MVVM (Model View ViewModel)
LiveData
(en particulierMutableLiveData
dans unrepository
)- Utilisation d'un
Fragment
comme vue (NeighboursFragment
) - Utilisation d'une
Activity
comme vue (NeighbourDetailActivity
) RecyclerView
(et sonListAdapter
/DiffItemCallback
)- Dialogue entre un
Adapter
et sonActivity
(via l'interfaceOnMeetingClickedListener
) - Utilisation d'un Repository pour persister les différents Neighbours pendant la vie de l'Application (
NeighbourRepository
) - Singleton et Injection (
ViewModelFactory
) - Tests unitaires (TU) avec des
LiveData
etViewModels
(grâce àMockito
)