Conceptos Básicos de Programación Orientada A Objetos
Conceptos Básicos de Programación Orientada A Objetos
La programación orientada a objetos (POO, u OOP según sus siglas en inglés) es un paradigma de
programación que viene a innovar la forma de obtener resultados. Los objetos manipulan los
datos de entrada para la obtención de datos de salida específicos, donde cada objeto ofrece una
funcionalidad especial.
La programación orientada a objetos es una forma de programar que trata de encontrar una
solución a estos problemas. Introduce nuevos conceptos, que superan y amplían conceptos
antiguos ya conocidos.
Una clase se puede definir de las propiedades y comportamiento de un tipo de objeto concreto. La
instanciación es la lectura de estas definiciones y la creación de un objeto a partir de ella.
Herencia: (por ejemplo, herencia de la clase C a la clase D) es la facilidad mediante la cual la clase
D hereda en ella cada uno de los atributos y operaciones de C, como si esos atributos y
operaciones hubiesen sido definidos por la misma D. Por lo tanto, puede usar los mismos métodos
y variables públicas declaradas en C. Los componentes registrados como "privados" (prívate)
también se heredan, pero como no pertenecen a la clase, se mantienen escondidos al
programador y sólo pueden ser accedidos a través de otros métodos públicos. Esto es así para
mantener hegemónico el ideal de POO.
Por ejemplo, herencia de la clase C a la clase D, es la facilidad mediante la cual la clase D hereda en
ella cada uno de los atributos y operaciones de C, como si esos atributos y operaciones hubiesen
sido definidos por la misma D. Por lo tanto, puede usar los mismos métodos y variables registrados
como "públicos" (public) en C. Los componentes registrados como "privados" (prívate) también se
heredan pero se mantienen escondidos al programador y sólo pueden ser accedidos a través de
otros métodos públicos. Para poder acceder a un atributo u operación de una clase en cualquiera
de sus subclases pero mantenerla oculta para otras clases es necesario registrar los componentes
como "protegidos" (protected), de esta manera serán visibles en C y en D pero no en otras clases.
Objeto: Instancia de una clase. Entidad provista de un conjunto de propiedades o atributos (datos)
y de comportamiento o funcionalidad (métodos), los mismos que consecuentemente reaccionan a
eventos. Se corresponden con los objetos reales del mundo que nos rodea, o con objetos internos
del sistema (del programa). Es una instancia a una clase.
Instancia de una clase. Entidad provista de un conjunto de propiedades o atributos (datos) y de
comportamiento o funcionalidad (métodos), los mismos que consecuentemente reaccionan a
eventos. Se corresponden con los objetos reales del mundo que nos rodea, o con objetos internos
del sistema (del programa).
Mensaje: una comunicación dirigida a un objeto, que le ordena que ejecute uno de sus métodos
con ciertos parámetros asociados al evento que lo generó.
Encapsulamiento: Significa reunir todos los elementos que pueden considerarse pertenecientes a
una misma entidad, al mismo nivel de abstracción. Esto permite aumentar la cohesión (diseño
estructurado) de los componentes del sistema. Algunos autores confunden este concepto con el
principio de ocultación, principalmente porque se suelen emplear conjuntamente.