Programacion

Páginas: 9 (2035 palabras) Publicado: 28 de octubre de 2011
Tipo abstracto de datos (TAD)
Un módulo se puede ver como un bloque que tiene declaración de comunicación con otros módulos (interfaz) y una funcionalidad interna.
La interface (del módulo) es una especificación de QUÉ puede hacer el módulo y puede tener declaraciones de tipos y variables que deban ser conocidas externamente.
La funcionalidad interna (implementación del módulo) abarca elcódigo de los procedimientos que concretan el CÓMO cumplir la función del módulo.
Caracterizar los problemas del mundo real significa reconocer los objetos del mundo real y abstraer sus aspectos fundamentales y su comportamiento, de modo de representarlos sobre una computadora.
La utilidad fundamental de abstraer y modularizar objetos del mundo real es re-usar soluciones en diferentes problemas.
Enel desarrollo de sistemas de software es importante trabajar con especificaciones abstractas, de modo de mejorar la calidad de los programas.
Los tipos definidos por el usuario permiten realizar encapsulamiento o empaquetamiento de los datos: se define un nuevo tipo y se integran en un módulo todas las operaciones que se pueden hacer con él.
¿Cuáles son los objetivos que se persiguen?
Si ellenguaje permite separar la parte visible (interfaz) de la implementación se tendrá ocultamiento de datos (data hiding).
Si se logra que en la solución del módulo los cambios en los tipos de datos internos NO afecten la parte visible del módulo, se tendrá independencia de la representación.
El concepto de tipo abstracto de dato es un tipo de dato definido por el programador que incluye:Especificación de la representación de los elementos del tipo.
Especificación de las operaciones permitidas con el tipo (siempre visible)
Desarrollo interno de cada una de las operaciones permitidas, con independencia para el usuario de cómo se implementan.
Encapsulamiento de todo, de manera que el usuario no pueda manipular los datos del objeto excepto por el uso de las operaciones definidas en elpunto anterior.
Su desarrollo es independiente del lenguaje de programación utilizado, aunque este puede aportar mecanismos que faciliten su realización. Debe verse como una caja negra.
En un TDA existen dos elementos diferenciados:
La Interface de utilización
La Implementación
A la hora de utilizar el TDA, la representación debe permanecer oculta. Solo podremos utilizar las operacionesdel tipo para trabajar con sus elementos.
Implementación
Representación tipo Implementación de las operaciones (oculto)
Un TAD reúne en su definición la representación y el comportamiento de los objetos del mundo real y se puede escribir la ecuación de un programa como:
Programa = TADs + Algoritmos de Control

Es un tipo de datos para representar objetos del mundoreal que no existen en el lenguaje.
Presentan una parte pública (INTERFACE) donde se declara el nombre del tipo y las operaciones permitidas y una parte privada (IMPLEMENTACION) donde se representa el tipo declarado y todas las operaciones descriptas en la interface.
El usuario sólo conoce la parte pública, es decir, no conoce cual es la representación del tipo utilizada ni cual es laimplementación las operaciones.
El Constructor del Tad debe:
Declarar la interface del TAD. (el tipo exportado y operaciones)
Definir la representación del tipo exportado e implementar las operaciones del tipo declaradas en la interface.
El Usuario del Tad debe:
Indicar el nombre del TAD a utilizar.
Declarar las variables del tipo de datos exportado.
Utilizar SOLO las operaciones permitidas para eltipo, es decir , las operaciones definidas en la interface.

Implementación

TAD nombre_TAD
interface
type exportado nombre_tipo_exportado
procedures y funciones visibles
implementación
representación del type exportado
procedures y funciones privadas (si las hay )
implementación de procedures y funciones visibles

Ventajas:
Permite una mejor conceptualización y...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Programación
  • Programacion
  • Programacion
  • Programación
  • Programacion
  • Programacion
  • Programacion
  • Programacion

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS