Alla fine di questo articolo di Martin Fowler c'è questa frase:
In general, the more behavior you find in the services, the more likely you are to be robbing yourself of the benefits of a domain model. If all your logic is in services, you've robbed yourself blind.
Ciò che l'intero articolo, molto astratto, non ti dice è ciò che esattamente va nel livello di servizio?
Come ho capito, l'architettura sarebbe qualcosa del tipo:
Controller -> Service(s) -> Domain Object(s) -> Repository Object(s)
Quindi quale tipo di codice andrebbe nel livello di servizio se gli oggetti di dominio implementano tutta la logica aziendale? Quale sarebbe la differenza tra il controller e il livello di servizio se il servizio non implementa la business logic?