J'apporte une certaine logique à mon application web pour rechercher des coordonnées géographiques pour un utilisateur, les stocker, puis utiliser ces coordonnées pour rechercher le fuseau horaire et le stocker. Mon premier essai a été d'ajouter une méthode GeoCodeUser() à un MappingService que j'avais défini pour faire d'autres tâches liées à la map. Parce que la recherche des deux bits de données reposait sur deux services REST différents, j'ai divisé les deux tâches de recherche en AddressGeoCoder et TimeZoneCoder et utilisé ceux-ci pour récupérer les données et UserRepository pour les stocker. La partie impaire de cette solution est que, bien que cette méthode ait besoin d'accéder au référentiel et à deux 'codeurs', les autres méthodes de la classe ne l'ont pas fait. Donc, chaque fois que j'utilise ce service pour faire d'autres choses, je reçois des dépendances dont je n'ai pas besoin, puis je les laisse tomber. Voici donc ce que je me demande:Basé sur les pratiques DDD, où cette logique devrait-elle aller et comment puis-je éviter les dépendances inutiles?
Si cela dans un service (car il est la coordination des différentes opérations) ou possible dans l'objet modèle « utilisateur » lui-même?
Si oui, devrais-je définir un service basé sur ses dépendances & zone d'intérêt (par exemple UserGeoCodingService), ou juste zone d'intérêt (MappingService) avec des dépendances supplémentaires?
Merci beaucoup pour votre perspicacité!
James