Glossary (a-f) Flashcards
abstract class
A class whose primary purpose is to define an interface.
An abstract class defers some or all of its implementation to subclasses. An abstract class cannot be instantiated.
abstract coupling
A reference to a type of object, as opposed to a concrete object.
abstract operation
An operation that declares a signature but doesn’t implement it.
An abstract operation corresponds to a pure virtual member function.
acquaintance relationship
A class that refers to another class has an acquaintance with that class.
aggregate object
An object that’s composed of subobjects.
The subobjects are called the aggregate’s parts, and the aggregate is responsible for them.
aggregation relationship
The relationship of an aggregate object to its parts.
black-box reuse
A style of reuse based on object composition.
Composed objects reveal no internal details to each other.
class
A class defines an object’s interface, representation and implementation.
class diagram
A diagram that depicts classes, their internal structure and operations, and the static relationships between them.
class operation
An operation targeted to a class, not an individual object.
In C++, class operations are are called static member functions.
concrete class
A class having no abstract operations. It can be instantiated.
constructor
An operation that is automatically invoked to initialize new instances.
coupling
The degree to which software components depend on each other.
delegation
An implementation mechanism in which an object forwards or delegates a request to another
object.
The delegate carries out the request on behalf of the original object.
design pattern
A design pattern systematically names, motivates, and explains
a general design that addresses a
recurring design problem in object-oriented systems.