J'ai un projet Android Studio qui utilise une architecture MVP. Quelle est la structure de packages conseillée pour un projet de ce style que nous pouvons faire:

app:
  screen_name
    activityA
    presenterA
    interfaceA

or:
   activities
     activityA
     activityB
   preentors
     presentorA
     presentorB
etc
10
presenchi 27 nov. 2017 à 10:35

3 réponses

Meilleure réponse

Votre problème ne concerne que l ' interface utilisateur du modèle architectural MVP . Il s’agit des classes Afficher avec leurs présentateurs correspondants. Et la meilleure solution est la première approche.

enter image description here

L'application doit avoir un package conforme aux fonctionnalités , PAS à la fonctionnalité commune. Nous devons regrouper les classes qui sont modifiées / modifiées ensemble .

Certains développeurs regroupent le code source par couche - comme la deuxième approche - car ils souhaitent conserver la même structure de package pour TOUS les projets sur lesquels ils travaillent. Mais c'est une mauvaise décision car il est toujours DIFFICILE de trouver des classes quand elles sont regroupées uniquement parce qu'elles partagent les mêmes classes parentes!

Ex: pour les activités, certains développeurs les mettent dans le package activity car toutes les activités étendent la classe Activity. Cela a du sens car il s'agit d'un package d'activité UNIQUEMENT, MAIS il est difficile de parcourir ces packages.

Pour plus d'informations, voir: android-mvp-architecture et ce SO answer

22
nhoxbypass 20 févr. 2020 à 16:26

MVP est un bon choix. Vous pouvez suivre le modèle suivant:

Application: 1. activités: + interface pour représenter la vue (c'est-à-dire l'activité) + activité réelle classe java 2. Présentateur: + interface pour représenter le présentateur + classe java pour représenter l'implémentation du présentateur 3. Modèle: + interface pour représenter le modèle + classe java pour représenter mise en œuvre du modèle (faites des appels réseau ici, passez le rappel au présentateur qui donne ensuite des données à l'activité)

0
The90sArtist 27 nov. 2017 à 07:45

En plus des autres réponses, je recommanderais de consulter les plans d’architecture Android, qui peut vous donner des idées sur la manière d'organiser et de mettre en œuvre votre application.

0
Alon Aviram 1 déc. 2017 à 19:27
47505865