OOP glossary: Master level
12 OOP terms at the Master level, each with a short definition and a link to its full page.
Updated
- Aggregate Root
- The single entry object for a group of related objects, guarding their rules.
- Anemic Domain Model
- Classes that hold only data while all the business rules live somewhere else.
- Command Pattern
- A pattern that turns an action into an object so it can be queued or undone.
- Covariance and Contravariance
- Rules for when a more specific or more general type can stand in for another.
- Diamond Problem
- The confusion when a class inherits the same method through two parents.
- Domain-Driven Design
- Designing code around the real business, its vocabulary and its rules.
- Entity
- An object defined by a lasting identity (an ID), not by its values.
- Fragile Base Class Problem
- When a change to a parent class unexpectedly breaks its child classes.
- Inversion of Control Container
- A framework tool that creates objects and supplies their dependencies automatically.
- Object Pool
- A set of ready-made objects that are reused instead of created fresh each time.
- Template Method Pattern
- A pattern where a base class fixes the steps and child classes fill some of them in.
- Visitor Pattern
- A pattern that adds new operations to classes by moving them into visitor classes.