Tipo de datos abstractos
Manejo del problema
La primera cosa con la que uno se enfrenta cuando se escriben programas es el problema. Típicamente nos enfrentamos a problemas de la vida real y generalmente deseamos facilitarnos la existencia por medio de un programa para dicho problema, sin embargo los problemas de la vida real son nebulosos, y la primera cosa que tenemos que haceres tratar de entender el problema para separar los detalles esenciales de los no esenciales tratando de obtener nuestra perspectiva abstracta o modelo del problema; a éste proceso de modelado se le llama ABSTRACCIÓN.
El modelo define una perspectiva abstracta del problema esto implica que el modelo se enfoque solamente en aspectos relacionados con el problema y que tratemos de definirpropiedades del problema, estas incluyen:
1.- Los datos que son afectados
2.- Las operaciones que son identificadas por el problema
Ejemplo:
Si queremos modelar un automóvil y determinar que puede hacer:
Motor Encender()
Gasolina Apagar()
Automóvil Velocidad Avanzar()
Luces Frenar()
Tipo(estándar/Autom) DarVuelta()
Características(Datos) OperacionesPara resumir la abstracción es la estructuración de un problema nebuloso en entidades bien definidas por medio de la definición de sus datos y operaciones. Consecuentemente estas entradas combinan datos y operaciones, no están desacoplados unos de otros.
Además se puede describir la abstracción de datos como la separación de las propiedades lógicas de un tipo de datos de sus detalles deimplementación. La abstracción de datos participa cuando se requiere un tipo de datos que no forma parte del lenguaje de programación.
Se puede definir el nuevo tipo de datos como un tipo de datos abstracto (TDA). Si se centra la atención solo en sus propiedades lógicas y se posponen los detalles de su implementación.
Como ya se mencionó, los lenguajes de Programación Orientados a Objetos son lenguajesformados por diferentes métodos o funciones y que son llamados en el orden en que el programa lo requiere, o el usuario lo desea. La abstracción de datos consiste en ocultar las características de un objeto y obviarlas, de manera que solamente utilizamos el nombre del objeto en nuestro programa. Esto es similar a una situación de la vida cotidiana. Cuando yo digo la palabra “perro”, usted nonecesita que yo le diga lo que hace el perro. Usted ya sabe la forma que tiene un perro y también sabe que los perros ladran. De manera que yo abstraigo todas las características de todos los perros en un solo término, al cual llamo “perro”. A esto se le llama ‘Abstracción’ y es un concepto muy útil en la programación, ya que un usuario no necesita mencionar todas las características y funciones de unobjeto cada vez que éste se utiliza, sino que son declaradas por separado en el programa y simplemente se utiliza el término abstracto (“perro”) para mencionarlo.
Ejemplo de un TDA Lista:
TIPO
Lista
DOMINIO
Los valores de la lista son números enteros.
OPERACIONES
Insertar un elemento en la lista.
Borrar un elemento de la lista
Buscar un elemento de la lista
Ordenar la listaDevolver la longitud de la lista
Imprimir la lista
Propiedad de los tipos de datos abstractos
Por medio de la abstracción se crea una entidad bien definida que puede ser adecuadamente manejada. Esta entidad define la estructura de datos de un conjunto de elementos.
La estructura de datos puede ser accesada solamente por medio de operaciones definidas, este conjunto de operaciones es llamadoINTERFASE y es exportada por la entidad. Una entidad con las propiedades recién descritas se conoce como un tipo de dato abstracto (TDA).
La Figura muestra un TDA que consiste en una estructura de datos abstracta y operaciones. Solamente las operaciones son visibles desde afuera y definen la interfase. |
|
Cuando la estructura de datos es llenada con valores reales se crea una instancia....
Regístrate para leer el documento completo.