High Quality Routines

Terminology Review

Abstract data type (ADT) definition of the type, together with the operations defined on the type (ignoring unimportant details – typically implementation).

Abstraction: reasoning about the essential properties of an object, ignoring unimportant details.

Implementation: an object build to satisfy a specification

Information hiding: embedding the details of a program element inside the element in such a way that when it is applied, its inner details do not need to be known.

Inheritance: the mechanism by which we build new classes on old ones.

Interface: the way in which an object interacts with its environment

Specification: a detailed description of the essential properties of an object

Why Create High-Quality Routines?

Abstracting Data

During Implementation (Code)

Data Types

ADT Module Conventions

Abstraction Levels