-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
wip: Poc/api #2
base: master
Are you sure you want to change the base?
wip: Poc/api #2
Conversation
a65d7e0
to
fbfcded
Compare
@ApplicationScoped | ||
@Slf4j | ||
@RequiredArgsConstructor | ||
public class TrackingService { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hello! Je sais que c'est en WIP :P mais comme ça je n'oublie pas
Il y a quelques temps je faisais également des "Service" qui regroupaient toutes les fonctions associé à un objet métier (ici tracking)
Puis Clement P a travaillé sur ELD (je t'ai invité sur le projet pour que tu puisse checker) et il a commencé à faire des "micro usecase" en gros splitter ses Services
Typiquement ici il aurai fait :
TrackingAppender (pour le create)
TrackingFetcher pour le findAll et getById
TrackingRemove pour le delete
et
TrackingUpdater pour le update
J'ai repris son concept dans mes autres projets et j'avoue que j'y vois beaucoup d'intérêt, surtout au niveau lisibilité de code, par exemple : l'unique methode du use case TrackingAppender se nommerait "Execute(Tracking tracking)"
à l'usage : trackingAppender.Execute(tracking);
plutôt que trackingService.create(tracking);
Puis ça évite surtout le "Service" qui fait 1k lignes à la fin du projet
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Bonne idée!
Closes #5