Substitutivity of Implementations

Abstract Data Types

Solution: minimize the reliance on details of implementation.

An abstract data type specifies the values and operations of a data type, without referring to how it will be implemented.

Applications coded only in terms of abstract data types can switch between implementations at no maintenance cost.