Penso che il ragionamento sia duplice per il collocamento di spedizione, gestione, tasse, ecc. come campi calcolati sull'intestazione.
-
Gli sviluppatori potrebbero preferire questo stile, avendo lavorato in applicazioni legacy ho notato che molti sviluppatori a partire dalla metà degli anni '90 tendevano a utilizzare un design di tabella piatto con campi calcolati.
-
I progettisti del software potrebbero non essere consapevoli di utilizzare un approccio più normalizzato alla progettazione del software specificamente nel dominio. Se stavo presentando un'esecuzione della fresatrice UI Shipping, Hanlding, Tax, sono generalmente valori sommati visualizzati come parte del processo di totalizzazione dell'ordine.
Conseguentemente gli autori del codice non distinguono tra un modello di dominio e un modello di vista o l'aspetto della vista del modello di dominio. Supponendo che i due siano strettamente accoppiati è comprensibile.
Se dovessi esprimere la mia opinione su quale sia il percorso migliore, sceglierei un approccio normalizzato per fornire le spese di spedizione, gestione, tasse e altri costi come elementi pubblicitari per ridurre i campi calcolati nell'intestazione dell'ordine. Quindi li fornirei come valore di somma in un ViewModel se necessario, ma solo come un prodotto della visualizzazione dell'interfaccia utente mai come metodo di archiviazione dei dati.