Understanding Object-Oriented Design
Let’s commence our journey by learning about what Object-Oriented Programming (OOP) is first because as we start implementing different patterns throughout the book, they will all approach the presented problems from an OOP perspective. For example, you will notice that the State pattern turns an object’s states into other objects. The Command pattern turns an object’s functions into objects. The Strategy pattern turns an object’s logic branching into objects. So, it’s important to understand what OOP is and why it is the main programming paradigm for developing games.
In this chapter, we will explore this paradigm from a unique standpoint that will help you understand it better and even approach programming and coding from a different perspective. We will approach it from the perspective of the philosophy of language. The reason for this is that as human beings, the way we solve problems is by structuring them...