Taming Dependency Chaos with Inversion of Control Containers
If a little decomposition is good, then A LOT of decomposition is better right? Well, maybe not :) In this talk, we'll take a look at understanding the intent behind Dependency Injection, understand the value of following the Single Responsibility Principle in our OO designs, and investigate the trouble that blind adherence to this pattern can often cause in our projects. To solve these problems, we'll dig into the benefits of using an Inversion-of-Control (IoC) container, explore just what's really going on under the hood with these things, and understand patterns and anti-patterns for their use in our code. Attendees should possess good intermediate C# language skills and understand core OO design principles.
Level: 200
Speaker: Steve Bohlen
Topics: Architecture
Reviews
-
classreviews
I really enjoyed his examples on using IoC. But I thought spending the last 20 minutes on Aspect Oriented Programming (AOP) was out of the scope of the session. I would have liked more examples on the IoC Containers. AOP is a whole other session and I believe he could have convinced me to go to a session solely on AOP with 5 minutes instead of 20. AOP is way too big for 20 minutes and I felt it took away from solidify some of the concepts he presented earlier with DI and IoC. For example, what is his stance on separating 1 class to 1 file, a very common practice that he didn't use in the presentation? He also used one method per class, which is a practice that he didn't really explain. I just wish I had a little more of an explanation on the core of his concepts and practices. You can tell he practices his art, but you also want to know why his way is better since it does require some overhead. I went to another class of his where he did a much better job of explaining why he used his particular methods (on unit testing best practices and anti-patterns). It was incredible and we'll be adopting some of those practices at our company.
-
rlundy
While I'm familiar with DI and IoC containers, the demo in this talk was invaluable in showing me how to actually take a piece of code and pull out the dependencies into a container. Though I've heard of AOP, I've never seen it used this way before, and when I get to work on Monday I may see about switching our IoC container to one where I can make use of it.
-
nicholascloud
For me, the value of this presentation was really the AOP segment. I was familiar with IoC and containers (having used StructureMap), but AOP was foreign to me, and I was intrigued by the natural relationship between them. I would love to see a session devoted exclusively to AOP.
-
Wllange
I liked the format for this speech, taking the audience through multiple refactors of a simple application.
