domingo, 7 de noviembre de 2010

Tipos de datos abstractos

Lenguajes de Programación - PUNTOS EXTRA

Hola a todos, siguiendo con el tema de abstracción de datos les voy a explicar los tipos de datos abstractos.

Bueno, primero que nada tal vez se preguntarán ¿Por qué es importante la abstracción?. El proceso de abstracción se convierte en una habilidad para los que estudien carreras relacionadas con la computación. La capacidad de crear una realidad por medio de herramientas computacionales requiere que se hagan continuas abstracciones, por esto es importante conocer las técnicas que desarrolla esta habilidad.

Tipo de Dato abstracto (TDA)

Este tipo de datos representa un modelo matemático que se compone de un conjunto de operaciones definidas sobre un conjunto de datos.

En 1974, John Guttag propuso por primera vez el concepto de tipo de dato (TDA) y fue hasta 1975 cuando Liskov lo propuso para el lenguaje CLU.

Los lenguajes de Programación orientados a objetos se forman por diferentes métodos y son llamados en el orden que el usuario lo desea. La abstracción de datos como en la entrada anterior lo mencione, consiste en ocultar ciertas características de un objeto. Un ejemplo de esto es por ejemplo si alguien menciona la palabra "casa", nosotros no necesitamos que nos digan que es la casa, nosotros sabemos que es el lugar donde vivimos, así que si abstraemos las características de todas las casas en un solo término, el cual llamamos "casa", lo entendemos como quiera. Esto es ABSTRACCIÓN y se utiliza mucho en la programación, ya que el usuario no necesariemente tiene que decir todas las características y funciones del objeto cada vez que se utiliza, simplemente son declaradas en diferentes secciones de un programa y se usa un término abstracto para mencionarlo.

Existen diferentes tipos de abstracción que se pueden presentar en un programa.
  1. Abstracción funcional: crear funciones y procedimientos y llamarlos con un nombre donde se destaque qué hace la función y se ignora como lo hace. El usuario no necesita conocer todos los detalles, solo necesita conocer que es lo que hace.
  2. Abstracción de datos:

    -  Tipos de datos: Los proporcionan los lenguajes de alto nivel. La representación usada se le oculta al programador, solo le permiten ver las
    operaciones que se utilizaron para cada tipo.

    -  Tipo definidos: Son proporcionados por el programador y hacen posible la definición de valores de datos cercanos al problema que se resolverá.

    -  TDA: son usados para la definición y representación de tipos de datos, junto con sus propiedades.

    -  Objetos: son tipos de datos abstractos a los cuales se le añaden propiedades para reutilizarse y para compartición de código.

Algunos ejemplos donde se utilizan los tipos de datos abstractos son los siguientes:

  • Conjuntos: se implementan conjuntos con sus operaciones básicas, operaciones de inserción, búsqueda, borrado, entre otras.
  • Árboles binarios de búsqueda: se implementan árboles de elementos, que se usan para representar internamente datos complejos.
  • Pilas y colas: se implementan algoritmos FIFO y LIFO.
  • Grafos: se implementan grafos, una serie de vértices unidos mediante aristas.
Por último, les dejo un video donde explican la programación con TDA. Son varios solo les pongo el primero, ya saben que si quieren ver los siguientes aparecen en la barra del lado derecho del video. Espero hayan entendido todo, saludos a todos :)

1 comentario: