Programación y Abstracción

En general un programa no es mas que una descripción abstracta de un procedimiento o fenómeno que existe o sucede en el mundo real.

Los mecanismos utilizados por los programadores para controlar la complejidad; entre todos ellos se destaca la abstracción.

Programación y Abstracción “ Los humanos hemos desarrollado una técnica excepcionalmente potente para tratar la complejidad: abstraernos de ella. Incapaces de dominar en su totalidad los objetos complejos, se ignoran los detalles no esenciales, tratando en su lugar con el modelo ideal de objeto y centrándonos en el estudio de sus aspectos esenciales.” [Wulft]

Programación y Abstracción

Abstracción: Es la capacidad para encapsular y aislar la información del diseño y ejecución.

Módulos

Tipos Abstractos

de Datos

Objetos

Procedimientos

PROGRESION HISTORICA

Programación y Abstracción

Las personas normalmente comprenden el mundo construyendo modelos mentales de parte del mismo: tratan de comprender cosas con las que pueden interactuar: un modelo mental es una vista simplificada de cómo funciona de modo que se pueda interactuar contra ella.

Programación y Abstracción

Este proceso de abstracción es psicológicamente necesario y natural: la abstracción es crucial para comprender este complejo mundo

La abstracción es esencial para el funcionamiento de una mente humana normal y es una herramienta muy potente para tratar la complejidad.

Programación y Abstracción

La abstracción es la clave para diseñar buen software. El método más idóneo para controlar la complejidad fue aumentar los niveles de abstracción.

Programación y Abstracción

Módulos

Tipos Abstractos

de Datos

Objetos

Procedimientos

PROGRESION HISTORICA

PROCEDIMIENTOS

El procedimiento proporcionó la primera posibilidad de ocultación de información.

Un programador podia escribir un procedimiento o conjunto de procedimientos que se utilizaban por otros programadores.

Programación y Abstracción

Módulos Tipos Abstractos de Datos Objetos Procedimientos

PROGRESION HISTORICA

MODULOS

Es una técnica que proporciona la posibilidad de dividir sus datos y procedimientos en una parte privada y una parte pública.

Proporcionan un método efectivo de ocultación de la información, pero no permiten realizar instanciación, que es la capacidad de hacer multiples copias de las zonas de datos.

Programación y Abstracción Módulos Tipos Abstractos de Datos Objetos Procedimientos PROGRESION HISTORICA

TADS

Un tipo abstracto de dato (TAD) es un tipo de dato definido por el programador que se puede manipular similarmente a los tipos de datos definidos por el sistema. Un tipo abstracto de dato corresponde a un conjunto (puede ser de tamaño indefinido) de valores legales de datos y un número de operaciones primitivas que se pueden realizar sobre esos valores.

TADS

Para construir un tipo abstracto de datos se debe poder: Exponer una definición del tipo.

Hacer disponible un conjunto de operaciones.

Proteger los datos asociados con el tipo.

Permitir instancias multiples del tipo.

Programación y Abstracción Módulos Tipos Abstractos de Datos Objetos Procedimientos PROGRESION HISTORICA

OBJETOS

Es un tipo abstracto de dato al que se añaden importantes innovaciones: modularidad y reutilización.

Los mecanismos básicos de orientación a objetos son: objetos, mensajes y métodos, clases e instancias y herencia.

OBJETOS

Una idea fundamental es la comunicación de los objetos a través de paso de mensajes.

Además se cuenta con mecanismos de herencia y polimorfismo. La persistencia se refiere a la permanencia de un objeto.

OBJETOS

Abstracción

Encapsulamiento

Persistencia

Herencia

Polimorfismo

Genericidad

Conceptos clave

Entidades básicas

Objeto

Mensajes

Métodos

Clases

Instancias

Herencia

Jerarquía

Publicado: Enrique Gallardo


Búsqueda personalizada