lunes, 7 de septiembre de 2009

La abstracción y el encapsulamiento como un proceso natural.

Abstracción: Es un método por el cual abstraemos valga la redundancia, una determinada entidad de la realidad de sus características y funciones que desempeñan, estos son representados en clases por medio de atributos y métodos de dicha clase.
Ejemplo: La abstracción de un automóvil.
- Características: Color, año de fabricación, modelo, etc.
- Métodos o Funciones: Frenar, encender, etc.
A esto se le llama abstracción. En general un programa no es más que una descripción abstracta de un procedimiento o fenómeno que existe o sucede en el mundo real.
- 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.
- La abstracción es clave para diseñar un buen software.
Procedimientos: Proporcionó la primera posibilidad de ocultación de información.
Módulos: 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 múltiples copias de las zonas de datos.
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. Para construir un tipo abstracto de dato se debe:
1.- Exponer una definición del tipo.
2.- Hacer disponible un conjunto de operaciones.
3.- Proteger los datos asociados con el tipo.
4.-Permitir instancias múltiples del tipo.
Si nos concentramos en las cosas, podemos encapsular en un objeto nuestro entendimiento acerca de sus características y el comportamiento de ese objeto. Lo tratamos como una entidad definida y su comportamiento no esta disperso en nuestro diseño. Es decir, no separamos la viscosidad del aceite de su color sino creamos un objeto aceite y ponemos ambas características como característica de dicho objeto.
El encapsulamiento nos permite considerar a los objetos como cajas negras: como objetos que podemos utilizar sin enfocarnos en la forma en que trabajan.
Caja negra.- Un objeto en el que su comportamiento y atributos son conocidos pero no así su trabajo interno, el cual continúa siendo un misterio.
Un mecánico debe saber como trabaja el motor y la transmisión de su carro, pero usted como conductor, puede usarlo sin preocuparse por estos detalles, El carro encapsula todos los detalles de las partes que lo constituyen, por lo que usted tan solo necesita conocer su interfaz: el acelerador, el freno y el volante.
Si abre la caja negra de su carro y se fija en lo que hay bajo el cofre, no encontrara una masa amorfa de características, sino subobjetos simples que interactúan entre si: motor, transición, poleas, etc. Si abre alguno de estos objetos encontrará más objetos, por ejemplo, el motor esta construido por bujías, tubos, bandas, convertidores catalíticos, etc. Y cada uno de ellos contiene a su vez objetos más pequeños que cumplen con una tarea específica.
Cuando el motor le da propulsión al carro, no hace todo el trabajo en un solo objeto monolítico. En vez de ello, delega a los objetos que lo constituyen una responsabilidad, A su vez, estos objetos pueden delegar responsabilidades a otro. De esta manera, el motor delega la acumulación de presión a los pistones y la responsabilidad de generar la chispa a las bujías.
prof Lauro Soto, Ensenada, BC, Mexico.

No hay comentarios:

Publicar un comentario