Il existe une bibliothèque DAL qui expose une douzaine de référentiels. Un référentiel par entité. Il y a PersonRepository
& PhotoRepository
.DAL: question sur les limites du dépôt
Lorsque j'ajoute une nouvelle méthode au référentiel et que la méthode traite l'entité, il est évident que je dois la mettre. Si je veux CreatePerson je vais créer PersonRepository::Create(...)
ou quand j'ai besoin de mettre à jour la photo, je vais créer PhotoRepository::Update
Mais quand la méthode traite des relations d'entités, les choses viennent parfois. Dois-je créer PersonRepository::AssignPhoto(PersonId, PhotoId)
ou dois-je créer PhotoRepository::AssingToPerson(PhotoId, PersonId
) par exemple? Si les choses sont claires pour moi (je suppose que Person est une entité plus importante que Photo donc je vais créer une méthode PersonRepository), certains développeurs ne trouvent pas de méthode appropriée et ont tendance à créer des doublons dans PhotoRepository.
Comment minimisez-vous ce problème?
Peut être vous créez les deux méthodes (PersonRepository::AssignPhoto
& PhotoRepository::AssignToPerson
) en même temps (un des délégués de méthode appel à un autre où il est mis en œuvre)? Ou devons-nous avoir de fortes méthodes de dépôt des noms de convention dans l'équipe? Ou peut-être que je vais changer l'approche des limites du dépôt?
Mais comment décidez-vous? –