抽象データ型
プログラムが実装されたとき、抽象データ型は実装を隠蔽するインタフェースを表す。実装は将来において変更されうるので、抽象データ型のユーザーは実装ではなくインタフェースに関心がある。
抽象データ型の強みはユーザーから実装が隠蔽されていることである。インタフェースのみが公開されるのである。このことは、抽象データ型がいろいろな方法で実装されうることを意味するが、インタフェースに忠実な限りユーザープログラムは影響を受けないのである。
例えば、二分探索木抽象データ型はいくつかの方法で実装できる。例えば、二分木、AVL木、赤黒木、配列である。しかし実装に関わらず二分探索木は「挿入」「削除」「検索」といった同じ操作が可能である。