Glossary of Terms
- Abstract class
-
A class that does not know to instantiate objects of itself.
- Class
-
The encapsulation of data and behavior in a bidirectionally related construct. Correlates to a concept in the real world. Synonyms include abstract data type or ADT.
- Concrete class
-
A class that knows how to instantiate objects of itself.
- Constructor
-
A special operation of a class that is responsible for building/initializing objects of the class.
- Destructor
-
A special operation of a class that is responsible for destroying/cleaning up objects of that class.
- Dynamic semantics
-
The collection of all possible states that an object of a class can have, along with the allowable transitions from one state to another. Often documented through a state-transition diagram.
- Information hiding
-
The ability of a class to hide its implementation details from the users of objects of that class.
- Instantiation relationship
-
The relationship between a class and its object(s). Classes are said to instantiate objects.
- Key abstraction
-
A key abstraction is defined as a main entity within a domain model. Key abstractions often show up as nouns within the domain vocabulary.
- Message
-
The name of an operation defined on a class. In strongly typed languages, a message may include the name, return type, and argument types of the operation (i.e., its prototype).
- Method
-
The implementation of a message.
- Object
-
An example member of a class consisting of its own identity, the behavior of the class, the interface of the class, and a copy of the class's data. Also called an instance of the class.
- Overloaded function
-
The ability to have two functions with the same name so long as their argument types differ (intraclass overloading) or they are attached to different classes (interclass overloading).
- Protocol
-
The list of messages to which a class can respond.
- Self object
-
The reference to the object to which a message is sent, when it is within the method.
|