South Africa’s biggest forum. Discuss, discover, and connect with thousands of members.
I am interested to know if other devs in SA are using IOC containers/Dependency Injection Frameworks and if so which ones
yes.
in aspnet im a big fan of ninject.
Ninject is slow for asp.net
Ninject is slow for asp.net
What do you use?Ninject is slow for asp.net
What do you use?
This shows some performance compared but most devs won't choose the best performance container.
Unity seem to be the most popular but it's hard to choose for.net since there isn't one that has become the standard
we use it in a website. there are so many more places to worry about perf than our di injector. a millisecond or 10 is negligible
Absolutely.
Unity inside PRISM is the flavour i'm familiar with.
I would rather drink camels piss than use Unity.
Its hardly a millisecond, and if you start building high traffic websites with thousands of people those "milli" seconds start adding up very fast. Very narrow minded thinking imo.
I'm confused, how does it add up?
Most of the IoC cost is at bootstrapping. Once your objects are wired up correctly, it is just like any other application.
Maybe the .NET implementation is different...
I would rather drink camels piss than use Unity.
ROFL, Unity is pretty crap in my opinion.
A old but still relevant article on IoC Containers
http://www.palmmedia.de/blog/2011/8/30/ioc-container-benchmark-performance-comparison
Resolving instances of said wired objects. Wiring up is done at bootstrap, resolving is not and i'm referring to the resolving mechanisms not the initial bootstrapping.
But my point is that why use something that is slower than something else, that offers better if not more functionality...
Again, IoC implies using interfaces in your implementations. You have DI inject concrete implementations that implement the interfaces.
During startup DI can have quite a high penalty. However as soon as that is done, each object has a reference to the concrete implementation chosen at startup time.
Not sure where the runtime cost is...