Summary
In this chapter, we learned about the beginnings of OOP using Ruby. Ruby helps massively when you need to understand OOP in a far easier way due to Ruby's easy-to-understand syntax and the ability to introspect into methods and data.
By the end of the chapter, you should feel comfortable using objects and classes and calling methods on them. By calling a method on any object (or, in Ruby parlance, sending a message to any receiver), you are automatically using OOP since you are working with objects. When you create a subclass, you are using inheritance, which is a core concept of OOP. When you decide to make some methods accessible and some methods private, you are mastering encapsulation, which is another core concept of OOP.
In the next chapter, we will go further into OOP with Ruby by learning about modules and mixins.