Je me sers d’un guide de style AngularJS. Dans ce guide, il existe un style appelé folder-by-feature
, au lieu de folder-by-type
, et je suis curieux de savoir quelle est la meilleure approche (dans cet exemple pour Java)
Supposons que je dispose d'une application permettant de récupérer des utilisateurs et des animaux domestiques à l'aide de services, de contrôleurs, de référentiels et d'objets de domaine ofcourse.
En prenant les styles de dossier par., Nous avons deux options pour notre structure de packaging:
1. Dossier par type
com.example
├── domain
│ ├── User.java
│ └── Pet.java
├── controllers
│ ├── UserController.java
│ └── PetController.java
├── repositories
│ ├── UserRepository.java
│ └── PetRepository.java
├── services
│ ├── UserService.java
│ └── PetService.java
│ // and everything else in the project
└── MyApplication.java
2. Dossier par fonctionnalité
com.example
├── pet
│ ├── Pet.java
│ ├── PetController.java
│ ├── PetRepository.java
│ └── PetService.java
├── user
│ ├── User.java
│ ├── UserController.java
│ ├── UserRepository.java
│ └── UserService.java
│ // and everything else in the project
└── MyApplication.java
Quelle serait une bonne approche et quels sont les arguments pour le faire?
Pet
, du contrôleur, du référentiel et du service. Dans quelle situation aurais-je besoin de tous les contrôleurs, mais pas des vues, des pensions ou des services?