読み方 : ちゅうしょうデータがた

抽象データ型【ADT】Abstract Data Type

概要

抽象データ型とはデータ構造とそのデータへの操作をひとまとまりとして定義したデータ型。内部実装を隠蔽し、定義された操作のみを通じてデータを扱う仕組みで、プログラムモジュール化再利用性を高めることができる。
抽象データ型のイメージ画像

整数や文字列などの基本的な型を組み合わせたデータ構造の形式と、そのデータに対して実行できる演算や処理を関数などの形でまとめて定義する。この型の変数を宣言すると、定義された構造に従ってメモリ上に格納領域が確保され、定義済みの操作のみを通じてデータにアクセスできる。

利用者はデータが内部でどのように保持されているかを知る必要がなく、公開された操作の手続きを呼び出すだけでよい。内部の実装方法が変更されても、利用側のプログラムに影響が及ばない。この性質を「情報の隠蔽」または「カプセル化」と呼ぶ。

代表的な例が「スタック」(stack)である。スタックは「後入れ先出し」(LIFO:Last-In First-Out)の規則でデータを扱う構造で、要素を追加するプッシュ操作(push)と、取り出すポップ(pop)操作を持つ。プログラム上は配列連結リストなどで実装されるが、抽象データ型としてまとめて定義しておけば、利用者はどの方式で実現されているかを意識せずに操作を呼び出せる。同様に、キュー連結リスト辞書ディクショナリー)なども抽象データ型として設計されることが多い。

オブジェクト指向プログラミングにおけるクラスは、抽象データ型を具現化・拡張した仕組みである。クラスデータフィールド)と操作(メソッド)をひとつの単位にまとめ、インターフェースと実装を分離するという抽象データ型の考え方をそのまま踏襲している。抽象データ型の概念は1970年代から提唱され、その後の言語設計やライブラリ設計に影響を与えた。

(2026.6.25更新)
 

他の辞典等による「抽象データ型」の解説 (外部サイト)

この記事の著者 : (株)インセプト IT用語辞典 e-Words 編集部
1997年8月より「IT用語辞典 e-Words」を執筆・編集しています。累計公開記事数は1万ページ以上、累計サイト訪問者数は1億人以上です。学術論文や官公庁の資料などへも多数の記事が引用・参照されています。