Un Tipo de Dato Abstracto (TDA) define valores y operaciones que se pueden realizar sobre ellos sin revelar detalles de su representación interna. Un TDA contiene una interfaz con operaciones permitidas como constructores, transformación, observación e iteradores, mientras que la implementación de dichas operaciones permanece oculta.