14
ESTRUCTURA DE DATOS ABSTRACCION DE DATOS

Abstraccion de datos

Embed Size (px)

Citation preview

Page 1: Abstraccion de datos

ESTRUCTURA DE DATOS

ABSTRACCION DE DATOS

Page 2: Abstraccion de datos

LA REPRESENTACION DE LA INFORMACIÓN

La mayor parte de los programas se dedican mas tiempo a gestionar la información que ha realizar cómputos

La información debe gestionarse de manera que se optimice su procesamiento

Page 3: Abstraccion de datos

OBJETIVOS DEL DISEÑOBuscar la representación de la información más correcta y eficiente para un determinado problema.

• Una solución es correcta si cumple con los requisitos del problema

• Una solución es eficiente si resuelve un problema con menos costo (espacio en memoria, tiempo...)

Page 4: Abstraccion de datos

Objetivos de Implementación:

1. Abstracción : Analizar un sistema complicado para reducirlo a sus partes constituyentes y describir éstas en un lenguaje preciso.

2. Encapsulación (Ocultación de información): Libertad de elección/cambio de implementaciones

3. Modularidad : estructura organizada en unidades funcionales separadas

Page 5: Abstraccion de datos

ABSTRACCION DE DATOSEs “ignorancia selectiva”

Decidir que es importante y que no lo es Enfocarse y depender de lo que ES importante Ignorar y no depender de lo que NO ES importante.

El propósito de la abstracción no es ser poco específico , es más bien crear un nuevo nivel, en el

cual se puede ser absolutamente preciso.

Edsger Dijkstra

Page 6: Abstraccion de datos

ABSTRACCION DE DATOSLa información que se procesa en un programa es una

abstracción del mundo real.

Información: conocimiento que puede comunicarse

Dato: información que se ha preparado, normalmente con un formato específico, para un fin determinado

Abstracción: simplificación de la realidad en la que ciertas propiedades y características de los objetos reales se ignoran, porque no interesan para el problema a resolver

Page 7: Abstraccion de datos

ABSTRACCION DE DATOSEn los lenguajes de alto nivel el programador no conoce los detalles de representación, en términos de bits, de las abstracciones elegidas.

• Abstracción de datos => barrera entre la visión del programador sobre los datos y la del ordenador.

• Oculta datos irrelevantes para la resolución del problema: Principio de ocultación de la información.

• Los principios de abstracción de datos y ocultación de la información son las bases del diseño descendente de estructuras de datos.

Page 8: Abstraccion de datos

Tipo de Datos, Tipo Abstracto de Datos y Estructura de Datos:

Tipo de dato : clase o conjunto de valores que se definen en función de las operaciones que se aplican a los objetos de dicho tipo, sin considerar la forma de representarlos

Page 9: Abstraccion de datos

Tipo de Datos, Tipo Abstracto de Datos y Estructura de Datos:

Tipo abstracto de datos (TAD): modelo matemático, junto con varias operaciones definidas sobre ese modelo, con el que se representa la estructura y el comportamiento de una parte del mundo real

Page 10: Abstraccion de datos

Estructura de datos: indica la forma en que se combinan una serie de partes para formar un valor compuesto

Tipo de Datos, Tipo Abstracto de Datos y Estructura de Datos:

Page 11: Abstraccion de datos

Diseño Descendente de Estructuras de Datos :

Basado en la división de un problema en varias tareas grandes, que a su vez se van a subdividir en otras mas pequeñas. El diseño descendente se puede aplicar: a los procesos y a las de las estructuras de datos. Los niveles inferiores contienen detalles ocultos para los superiores (principio de ocultación de la información).

Page 12: Abstraccion de datos

Diseño Descendente de Estructuras de Datos :

Encapsulamiento de datos: la representación física de los datos del programa está encubierta con el encapsulamiento de datos, el programador: sólo conoce la estructura lógica de los datos, sólo puede acceder a ellos a través del conjunto de operaciones.

Page 13: Abstraccion de datos

Características: cómo son los componentes, cómo se organizan y cómo se relacionan entre sí.

Operaciones: cómo se utiliza la estructura. Operaciones básicas + métodos de estructuración = Operaciones complejas

Operaciones básicas: Comparación (a==b, a<b.....) Asignación (a=b)

Diseño Descendente de Estructuras de Datos :

Page 14: Abstraccion de datos

Técnicas de Diseño O. O. Aplicadas a las E. D. :