Conceptos del paradigma de Orientación a Objetos
El objetivo de la abstracción de los datos, es proporcionar a los usuarios una visión abstracta de los datos, es decir, el sistema esconde ciertos detalles del cómo se almacenan y mantienen los datos (Tomar los mas interesante en un determinado nivel). Los objetos son descritos como implementaciones de tipos de datos abstractos. Es una descripción o especificación simplificada de un sistema que hace énfasis en algunos detalles significativos y suprime los irrelevantes. la abstracción debe enfocarse más en qué es un objeto y qué hace antes, de pensar en la implementación. Por ejemplo, un automóvil puede abstraerse como un objeto que sirve para desplazarse a mayor velocidad, sin importar cómo lo haga. Una característica de la abstracción es que un objeto puede abstraerse de diversas forma, dependiendo del observador. Así, el automóvil que se mencionaba puede ser visto como un objeto de colección por un coleccionista, una herramienta de trabajo por un corredor profesional, una mercancia por un vendedor, etc. (http://www.lawebdelprogramador.com).
La encapsulación se refiere a impedir el acceso a determinados métodos y propiedades de los objetos estableciendo así que métodos y propiedades de estos pueden ser utilizados desde el resto del código. Esto se consigue en otros lenguajes de programación utilizando modificadores de acceso, que definen si cualquiera puede acceder a esa función o variable (public) o si está restringido el acceso a la propia clase (private). Para acceder al valor de las variables private o modificar su valor se añaden también funciones cuyo único cometido es este, y a las que normalmente se les da el nombre de getVariable y setVariable. (http://www.wikilearning.com/).
Una de las ventajas mayores que ofrece la programación orientada a objetos es la posibilidad que una clase herede toda la funcionalidad de otra clase, añadiendo extra funcionalidad particular. La clase que toma prestada la funcionalidad de otra se llama subclase, mientras la que presta su funcionalidad se llama superclase. Este concepto se llama herencia. Una vez hecha esta asociación, la subclase tiene aceso a todos métodos y propiedades de la superclass. (http://www.iua.upf.es).
El hecho que existe heréncia entre varios objetos nos permite tener un nuevo concepto: el polimorfismo. Cuando estamos creando una relación padre-hijo entre clases, la subclase no solo extiende las funcionalidades de la superclase: efectivamente, cada subclase es una superclase. Como toda la funcionalidad del padre existe en el hijo, podemos usar el hijo en cualquier sitio que podriamos usar el padre. El contrario no es cierto: el padre no tiene toda la funcionalidad presente en el hijo (el hijo ha implementado funcionalidad adicional), así que el padre no se puede usar donde el hijo. El polimorfismo es un concepto muy importante porqué permite crear funcionalidad sobre objetos genericos. Luego, esta funcionalidad la interpretarán los objetos especificos según sus propias necesidades. (http://www.iua.upf.es).

0 Comentarios:
Publicar un comentario
<< Home