Ho una API con 3 livelli
1.) Il livello dell'endpoint che espone le funzioni del gestore dell'endpoint api. Questi in genere chiamano il livello aziendale, aggregano i risultati per formare una risposta http.
2.) Il livello della logica aziendale, che fornisce interfacce per ottenere o modificare dati mentre si utilizzano regole aziendali dietro le quinte, modifica dei dati e applicazione delle regole. Impedisce il gonfiore delle funzioni dell'endpoint API e fornisce una logica riutilizzabile.
3.) il livello dati, esegue la modifica o l'interrogazione effettiva del livello di persistenza (db o altro) senza applicare alcuna logica ai dati.
In alcune delle mie funzioni il livello aziendale deve lavorare con un elenco di oggetti recuperati dal livello dati che è stato ordinato da un campo specifico. Non c'è alcun caso (attualmente prevedibile) in cui il livello aziendale elaborerà mai questo elenco non ordinato in quel campo, quindi in questo caso ha senso ordinare i dati nel livello dati o ha più senso rimanere puri nelle intenzioni dei livelli e anche se ciò significa riordinare l'elenco ogni volta, mantenere l'ordinamento nel livello aziendale?