A functional description of something.
An overridable method to customize behaviour.
Lightweight data objects in python defined using __slots__.
__slots__
A Non-standalone class that encapsulates some unit of work, for other classes to inherit from.