Abstract Data Types
To cope with complexity, the human mind engages in
abstraction-the act of separating the essential qualities of
an idea or object from the details of how it works or is
composed.
To manage complexity, software developers regularly use
two important abstraction techniques:control abstraction
and data abstraction
An example of control abstraction is a function call. Ex.
4.6 + sqrt(x)
We use data abstraction when we define a new type. We
concentrate initially on its logical properties and defer
implementation details.