Atando algunos cabos sueltos

Publicado el 28 marzo 2014 por Alexander171294 @std_io
Buenas tardes, en esta entrada hablaremos sobre la Abstracción, Ocultamiento de información y encapsulación, además hablaremos también sobre el rol de la abstracción...
Abstracción, Ocultamiento de Información y Encapsulación son conceptos diferentes pero fuertemente relacionados. Podríamos argumentar que la abstracción es la técnica que nos ayuda a identificar que es significativo y que no lo es de un objeto. La encapsulación es la técnica que nos permite construir con estos aspectos, los de significación y aquellos que no lo son, una entidad cohesiva, una cápsula. El ocultamiento de información es la técnica que nos permite enfatizar, hacer visibles, que aspectos son esenciales a la entidad y cuales no.El rol de la Abstracción
El propósito de la abstracción en la programación es,
"separar comportamiento de implementación... una abstracción... es definida por especificación e implementada por un modulo...".
La especificación de una abstracción consiste en establecer las propiedades que la definen. Para que tal especificación resulte útil ha de ser precisa, general, legible y no ambigua. La especificación de una abstracción define totalmente su comportamiento y la corrección de la misma puede probarse a condición que el lenguaje en la que se escriba cuente con una semántica precisa.
La implementación de una abstracción, consiste en determinar una representación  para la misma y en codificar sus operaciones a partir de esta representación. Una implementación es correcta si provee el comportamiento definido por la especificación. Dos implementaciones correctas pueden diferir una de otra en los algoritmos que utilizan y en la eficicencia derivada de los mismos.
Lo expresado anteriormente enfatiza, que dos implementaciones correctas pueden diferir, sin diferir en lo importante, la especificación de la abstracción. La especificacion establece que es importante en una abstracción, y la implementación resulta una realización particular, una concreción, en un lenguaje determinado o mas especifica mente en el ámbito de un sistema de tipo determinado, de esa especificación.
Para que una abstracción sea de utilidad debe estar formulada por especificación y soportada por encapsulación y ocultamiento de información. Cuando una abstracción se formula por especificación y se soporta con encapsulación y ocultamiento de información, provee, lo que algunos autores denominan, localidad. Por localidad queremos significar que una entidad de software puede ser implementada, entendida o modificada de una a la vez.
Si bien la abstracción por si sola no permite tratar de manera apropiada las múltiples dimensiones de la evolución, sin un buen soporte para formular abstracciones, la evolución es intratable. Esta idea de localidad si bien no es la respuesta a todos los problemas presentes en el desarrollo de software, constituye el punto de partida de aquellos sistemas que pretenden pasar la prueba del tiempo, en particular provee un buen soporte para la llamada evolución horizontal o variabilidad.
saludos a todos los lectores! y hasta aquí llega la entrada del día de hoy.Soy amante de la programación, me gusta ver y crear cosas nuevas... Me gusta el metal, rock, y también daftpunk jajaja

También podría interesarte :

Quizás te interesen los siguientes artículos :