Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Definicin Informal
Es un tipo de dato definido por el usuario, que representa un tipo de elemento involucrado en el problema
que se quiere resolver, pero que podra ser reutilizado posteriormente.
Definicin formal
Es una estructura algebraica compuesta por un conjunto de objetos abstractos, que modelan elementos
del mundo, y un conjunto de operaciones para su manipulacin, las cuales simulan el comportamiento que
el elemento modelado tiene en el mundo del problema.1
Un cliente de un TAD es cualquier rutina que utilice un objeto de dicho tipo.
T1 es cliente de T2, si alguna rutina de T1 es cliente de T2.
Representacin de un Objeto Abstracto
Se hace mediante un dibujo, una notacin algebraica independientemente del lenguaje de programacin.
En esta representacin se expresa las condiciones, relaciones, restricciones y operaciones de los
elementos modelados, sin restringirse a una representacin interna en particular.
Ejemplos
Representacin Abstracta del objeto Matriz.
La forma ms sencilla de representarlo es mediante una grfica as:
0
Y
0
M-1
Yi,j
N-1
Sin definir una estructura de datos concreta es posible referenciar cada uno de los elementos de una
matriz, de sus dimensiones y de la nocin de fila y columna, entre otros.
Representacin Abstracta del objeto Diccionario
Alternativa 1
Este objeto tiene una serie de palabras y cada una varios significados, entonces podra representarse de la
siguiente manera:
< elem-1, , elem-N >
| elem-i
palabra : String
s-11,,s-1m
s-n1,,s-nk
{ x1,..,xN}
c1c2ccN
Polinomio
Lista
<x1,x2,.,xN>
El invariante de un TAD
El invariante se establece mediante condiciones referentes a la estructura interna y los componentes que
se deben cumplir para que el tipo abstracto de dato represente el objeto del mundo (nocin de validez).
Por ejemplo para el TAD Conjunto se deben cumplir las condiciones: No elementos repetidos
( xi x j para i, j tal que i j ), y que todos los elementos pertenezcan al mismo tipo.
Invariante TAD conjunto
xi x j para i, j tal que i j
TAD Diccionario
Representacin abstracta
< elem-1, , elem-N >
| elem-i
palabra : String
Especificacin de un TAD
A continuacin se muestra un esquema general para la especificacin de los TADs.
TAD <nombre>
<Objeto abstracto>
<Invariante del TAD>
<Operaciones>
(Representacin)
<Operacion1> :
:::::
<Operacionk> :
<dominio>
<codominio>
<dominio>
<codominio>
<prototipo operacin1>
/* Descripcin de la operacin */
TAD Matriz
0
M-1
0
i
xi,j
N-1
int x int
Matriz x int x int x int
Matriz x int x int
Matriz
Matriz
Matriz
Matriz
int
int
int