Sie sind auf Seite 1von 6

TIPO ABSTRACTO DE DATOS (TAD)

Abstraccin
Capacidad intelectual de considerar una entidad aislndola de cualquier ejemplar especfico de esa entidad.

Abstraccin de datos
Descripcin abstracta o lgica de: los datos (cmo se organizan) las operaciones sobre los datos (cmo se modifican o se accede a ellos)

Diseo y Programacin
1 Modelado
Modelo matemtico: Tipo Abstracto de Datos Algoritmos expresados de manera informal

REFINAMIENTO POR PASOS 2 Implementacin


Tipo de Datos representacin en memoria del TAD procedimientos de acceso al TAD Lenguaje algortmico

CODIFICACIN 3 Programa
Estructuras de datos Funciones Lenguaje de programacin

Operado res Bsicos Generalizacin Encapsulamiento Tipo s Bsico s

Pro cedimiento s

TADs

Tipo Abstracto de Datos (TAD)

TIPO ABSTRACTO DE DATOS (TAD)

Ingeniero de software TAD Especificacin informal de los algoritmos ABSTRACCIN Tipo de datos
representacin en memoria rutinas de acceso

Programador Estructuras de datos Funciones y procedimientos

Lenguaje algortmico DISEO

Lenguaje de programacin CODIFICACIN

Tipo Abstracto de Datos (TAD)

TIPO ABSTRACTO DE DATOS (TAD)


TAD
Modelo matemtico + Operaciones

Tipo de datos
Implementacin de un TAD

Estructura de datos
Conjunto de variables, quiz de tipos distintos, relacionadas entre s segn una cierta arquitectura o topologa

Ejemplo: TAD conjunto

Coleccin de objetos de tipo indeterminado sin relacin de orden Operaciones UNIN, INTERSECCIN y DIFERENCIA

Operaciones
Internas o externas Operandos y resultado pueden pertenecer o no al TAD Al menos un operando o el resultado pertenecen al TAD Se puede definir nmero de operaciones que queramos Cada conjunto de operaciones define un TAD distinto

Implementacin de un TAD

Implica dos cuestiones representar los datos en memoria de una manera concreta, es decir, definir los tipos de datos necesarios especificar en lenguaje algortmico las operaciones sobre los datos (rutinas de acceso y modificacin) No es nica: hay muchas posibilidades Ha de elegirse la implementacin que ms convenga, teniendo en cuenta qu operaciones son las ms frecuentes

Ejemplo: TAD complejo


Operaciones sumar y restar: representacin cartesiana c=x+iy Operaciones producto y cociente: representacin polar c = r e i

Tipo Abstracto de Datos (TAD)

TIPO ABSTRACTO DE DATOS (TAD)


Objetivo: APRENDER A DESARROLLAR TIPOS DE DATOS A nivel lgico
TADs Especificacin nica Representacin en memoria Rutinas de acceso Varias implementaciones posibles EFICIENCIA

A nivel de implementacin

ENCAPSULACIN
Interfaz nica (TAD) Programa de aplicacin

Implementacin Rutinas de acceso Representacin en memoria de los datos

esto no cambia

esto puede cambiar

Ventajas del diseo basado en TADs

Durante la etapa de diseo no distraemos esfuerzos en los detalles de implementacin La funcionalidad del programa es independiente de la implementacin Es fcil modificar y mejorar la implementacin SIN MODIFICAR los programas de aplicacin REUTILIZACIN: el TAD encapsulado puede ser utilizado por distintos programas

Tipo Abstracto de Datos (TAD)

TIPO ABSTRACTO DE DATOS (TAD)


TIPO DE DATOS

TAD

OPERACIONES AXIOMAS : definen el comportamient o de un TAD DIFCIL !!

Ejemplo de especificacin de un TAD TAD matriz


OBJETO disposicin rectangular (bidimensional) de elementos (en principio, de tipo indeterminado), organizados en filas y columnas:

a11 a21 M= ... an1

a12 a22 ... an 2

.... a1m .... a2 m .... ... .... anm

M: matriz de n filas y m columnas aij: elemento de la fila i y la columna j OPERACIONES 1. ObtenerElemento(i,j,M) 2. AsignarElemento(i,j,x,M) 3. Asignar(M1,M2) 4. Sumar(M1,M2) 5. Negativa(M) 6. Restar(M1,M2) 7. ProductoPorEscalar(e,M) 8. Producto(M1,M2) 9. Trasponer(M) 10. Determinante(M) 11. Inversa(M)

Tipo Abstracto de Datos (TAD)

Tipo Abstracto de Datos (TAD)

Buenas prcticas de programacin


Disear mediante refinamientos sucesivos Reutilizar secciones de cdigo ya existentes Generar cdigo reutilizable: Encapsular: TADs Bibliotecas de funciones

Tipo Abstracto de Datos (TAD)

Das könnte Ihnen auch gefallen