Object-Oriented Programming
Object-Oriented Programming (OOP) is a programming paradigm: a "way of programming", or a "way-of-thought" if you will. It is often contrasted with functional programming. OOP operates on classes—the building blocks of OOP—from which hierarchies of classes and relationships are built to model a domain or problem.
Programming languages such as C++, Python, and Scala support OOP.