Beruflich Dokumente
Kultur Dokumente
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
CODIFICACIN 3 Programa
Estructuras de datos Funciones Lenguaje de programacin
Pro cedimiento s
TADs
Ingeniero de software TAD Especificacin informal de los algoritmos ABSTRACCIN Tipo de datos
representacin en memoria rutinas de acceso
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
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
A nivel de implementacin
ENCAPSULACIN
Interfaz nica (TAD) Programa de aplicacin
esto no cambia
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
TAD
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)