OOP flash cards: Master level

12 OOP terms at the Master level, as flash cards.

Updated

Terms in this deck

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.

Read them in the glossary