Practical Object-Oriented Design Principles

Figuring out the best way to apply object-oriented design principles to your code is a challenge for even the most experienced developers. In this tutorial we’ll dive deeply into exactly how to apply object-oriented design principles to the software we’re writing, including an in-depth analysis of the SOLID patterns and practices.

Comments

Before attending this session, I was concerned about its length and how in-depth the content would be. I was very glad that neither of those concerns were an issue. Brandon did a great job of going through SOLID as well as some other OOP design principles.

I went into the talk with a basic understanding of those principles, and after the talk I felt that I had a much more thorough understanding of not only the principles, but how they relate to each other. I also feel that it was great to include many of the exceptions to these principles, and their drawbacks in certain situations. The code examples also helped to make things more clear.

This talk gave me a better understanding of SOLID and also a much clearer grasp of the distinction between Inversion of Dependency and Dependency Injection and how those principles interact. I also found the discussion of anti-patterns helpful, there are some gotchas there that I've run into already.