Most of us understand object-oriented programming to some degree. We might even have a deep understanding of design patterns, refactoring, and testing. However, a lot of those understandings can fall abrupty to the wayside when you are writing code on a large team with dozens of people.
Many of us learned to develop software using OOP (or Object-Oriented Programming). The model somewhat fits the way a lot of people look at the world and works well in many cases. However, over time, you’ll start to notice situations where a naive understanding of OOP is simply not good enough. In this episode, we’re going to talk about some of the things that will plague you as you take OOP to the next level.