This chapter covers
- What is a class?
- Why would I use a class, anyway?
- What are the benefits of classes?
- What are initializers?
- How do classes inherit from their parent classes?
- What is evolution?
- What’s scope and how does it apply to your code?
- What’s the difference between declaring, defining?

Milestone 9, Reduce your code, is where things get a little more advanced. Classes make your code more portable and easier to maintain.
I’ll start by giving you a bird’s-eye view of what classes are and then show you how to code them.
Warning
The topic of classes isn’t simple. This chapter has been made easy to understand to help you learn. But some information on classes isn’t included or explained in-depth, either because I teach it to you later or you don’t need to know it yet.
Think of a class as a collection of related functions and variables, with special features, that are organized into a bundle. Let me give you an example.
To understand the concept of a class, think about what the word person means. We’re all different in lots of ways—skin color, height, age, hair color, gender, and more—but still, each one of us is a person.