I am working on a software product that can substantially change behavior based on the configuration & meta-data supplied.
I would like to know best practices to architect / build a highly configurable software product. Considering that there are substantial number of configuration parameters, I'd like to look at something that will not affect the performance before I look at dependency injection. My platform is .Net ... I seek recommendations on architecture / design and implementations fronts.
Dependency Injection is very unlikely to adversely impact performance. There may be slight (measured in miliseconds) delays when you wire up your initiali dependency graph, but compared to the usual performance culprits of most applications (very often out-of-proccess calls), it's negligible.
If you have a need to recompose a running application without restarting it, you may want to take a look at MEF, but otherwise, common DI patterns should serve you well.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With