We strictly adhere to inversion of control in our codebase, but that creates hellish constructors (yes, I know that means our classes aren't cohesive enough, this is a work in progress).
The thing is, that sometimes those dependencies are quite silly like a DateTime wrapper to enable date mocking, or the logger, or a TaskFactory wrapper which are not directly related to the business of the class and I do not think they require explicit introduction.
Could we ease the load on our ctors by using a service locator for those items which are passed all over the system? What would be the disadvantages?
Aucun commentaire:
Enregistrer un commentaire