Motifs de conception pour éviter de briser le SRP tout en effectuant une journalisation des données lourdes
https://softwareengineering.stackexchange.com/questions/179807
-
05-11-2019 - |
Question
Une classe qui effectue à la fois des calculs et de la journalisation des données * semble avoir au moins deux responsabilités. Compte tenu d'un système pour lequel les spécifications nécessitent une journalisation lourde de données, quel type de modèles de conception ou de modèles architecturaux peut être utilisé pour éviter de faire gonfler toutes les classes avec des appels de journalisation à chaque fois qu'ils calculent quelque chose?
Le motif du décorateur doit être utilisé (par exemple Interpolator
décoré à LoggingInterpolator
), mais il semble que cela entraînerait une situation à peine plus désirable dans laquelle presque toutes les grandes classes devraient être décorées de journalisation.
*Noter: Quand j'ai écrit ceci, je travaillais dans un contexte dans lequel il s'appelait la journalisation, mais elle écrivait en fait dans une base de données. Je ne fais pas particulièrement référence à l'émission de messages de débogage ou d'erreur dans un log4net
journal ou similaire.
Pas de solution correcte