4.1 ADT. Primera aproximación.
En los primeros lenguajes, como FORTRAN y COBOL, la creación de tipos de datos nuevos está limitada a la definición de subprogramas.
A medida que el concepto de tipo de dato evoluciona, los nuevos lenguajes suministran facilidades para especificar o implementar tipos de datos completos, como los package de Ada o los closes de C++.
Para entender el concepto de encapsulamiento a datos definidos por el usuario, definiremos un tipo abstracto de datos como:
La definición completa debe ser "encapsulada" de forma tal que el usuario del tipo necesite saber sólo el nombre y la semántica de las operaciones disponibles.