Client GitHub pour Android construit à l'aide du modèle de conception MVVM, programmation réactive avec LiveData, modèle de référentiel, bibliothèque de persistance de la pièce.
Caractéristiques: Pagination, mise en cache des résultats de recherche et possibilité d'ajouter des signets.
Le code est empaqueté par fonctionnalité. Le paquet de données contient les classes de modèle de base de données, le service Web et le référentiel locaux, utilisés comme source unique de vérité.
Le package d'interface utilisateur contient le code VIEW (Activités) et VIEW MODEL (AndroidViewModel) pour chaque écran de l'application. VIEW MODEL ne contient aucune référence aux classes VIEW ou MODEL dans un package de données. Le code est donc modulaire et il est facile de changer d'écran et d'ajouter des fonctionnalités.
LiveData est utilisé pour communiquer entre les couches d'application. Toutes les modifications apportées à la couche MODEL sont propagées via LiveData à VIEW MODEL, puis à la couche VIEW.
Dans la classe Utils, il existe une interface de configuration dans laquelle vous pouvez configurer le terme de recherche par défaut, les résultats par page et la durée pendant laquelle les résultats doivent être conservés dans le cache local, avant de tenter de mettre à jour de nouveaux.
Consultez le code source à l'adresse: https://github.com/giantturtle/RepoExplorerMVVM.