Introducción.

Originalmente, la programación orientada a objetos se pensó para sistemas de simulación, donde se quería modelar el comportamiento de "objetos" reales. Cada objeto real se representa con un objeto en el programa en ejecución.

Como en el mundo real, los objetos en programación tendrán una serie de características o propiedades, y un comportamiento; por otra parte, interiormente están formados por un mecanismo cuyas intrincadas particularidades no necesitamos conocer si simplemente lo observamos "desde fuera". Nadie necesita saber cómo funciona un radiador para conducir un coche. Pero sí necesitamos saber su comportamiento (qué pasa si giramos el volante o pisamos el acelerador) y sus propiedades (la velocidad de cada momento, la cantidad de gasolina en el depósito, o el peso máximo que soporta).

Es esta misma separación, abstracción, entre la visión externa y la interna lo que marca la primera idea clave de la programación orientada a objetos: el encapsulamiento. Así como un objeto del mundo real marca una entidad de tratamiento único, un objeto de programación debe integrar en una única estructura las propiedades o atributos (datos, variables), el comportamiento (especificación de funciones) y el mecanismo (el código con toda su complejidad).

Cuando usamos un vídeo en casa no nos preocupa su electrónica, simplemente su mando a distancia: igualmente cuando usemos un objeto en programación sólo nos preocupará su funcionamiento (las funciones que podamos aplicar sobre él o la información que nos suministre). Esto se conoce como ocultación. Una vez que ya está construido correctamente el objeto, al utilizarlo en programas no podemos cambiar el código que contiene, simplemente ejecutar sus funciones y consultar el valor de sus propiedades.
 

Seguir