Está en la página 1de 5

PROGRAMACIN ORIENTADA A OBJETOS

La programacin orientada a objetos es un paradigma de programacin que


usa objetos en sus interacciones, para disear aplicaciones y programas
informticos.
El elemento fundamental de la OOP es, como su nombre lo indica, el objeto.
Podemos definir un objeto como un conjunto complejo de datos y programas
que poseen estructura y forman parte de una organizacin.
Esta definicin especifica varias propiedades importantes de los objetos. En
primer lugar, un objeto no es un dato simple, sino que contiene en su interior
cierto nmero de componentes bien estructurados. En segundo lugar, cada
objeto no es un ente aislado, sino que forma parte de una organizacin
jerrquica o de otro tipo.
Un objeto puede considerarse como una especie de cpsula dividida en tres
partes:

RELACIONES
PROPIEDADES
METODOS

Las relaciones permiten que el objeto se inserte en la organizacin y estn


formadas esencialmente por punteros a otros objetos.
Las relaciones entre objetos son, precisamente, los enlaces que permiten a un
objeto relacionarse con aquellos que forman parte de la misma organizacin.
Las propiedades distinguen un objeto determinado de los restantes que
forman parte de la misma organizacin y tiene valores que dependen de la
propiedad de que se trate. Las propiedades de un objeto pueden ser heredadas
a sus descendientes en la organizacin.
Todo objeto puede tener cierto nmero de propiedades, cada una de las cuales
tendr, a su vez, uno o varios valores. En OOP, las propiedades corresponden a
las clsicas "variables" de la programacin estructurada. Son, por lo tanto,
datos encapsulados dentro del objeto, junto con los mtodos (programas) y las
relaciones (punteros a otros objetos). Las propiedades de un objeto pueden
tener un valor nico o pueden contener un conjunto de valores ms o menos
estructurados. Adems, los valores pueden ser de cualquier tipo si el sistema
de programacin lo permite.
Pero existe una diferencia con las "variables", y es que las propiedades se
pueden heredar de unos objetos a otros. En consecuencia, un objeto puede
tener una propiedad de maneras diferentes:
Propiedades propias. Estn formadas dentro de la cpsula del objeto.

Propiedades heredadas. Estn definidas en un objeto diferente, antepasado de


ste (padre, abuelo", etc.). A veces estas propiedades se llaman propiedad
miembro porque el objeto las posee por el mero hecho de ser miembro de una
clase.
Los mtodos son las operaciones que pueden realizarse sobre el objeto, que
normalmente estarn incorporados en forma de programas (cdigo) que el
objeto es capaz de ejecutar y que tambin pone a disposicin de sus
descendientes a travs de la herencia.
Una operacin que realiza acceso a los datos. Podemos definir mtodo como un
programa procedimental o procedural escrito en cualquier lenguaje, que est
asociado a un objeto determinado y cuya ejecucin slo puede desencadenarse
a travs de un mensaje recibido por ste o por sus descendientes.

CONCEPTOS FUNDAMENTALES:
Clase
Definiciones de las propiedades y comportamiento de un tipo de objeto
concreto. La instanciacin es la lectura de estas definiciones y la creacin 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 mtodos y variables pblicas declaradas
en C. Los componentes registrados como "privados" (private) tambin se
heredan, pero como no pertenecen a la clase, se mantienen escondidos al
programador y slo pueden ser accedidos a travs de otros mtodos pblicos.
Esto es as para mantener hegemnico el ideal de POO.
Objeto
Instancia de una clase. Entidad provista de un conjunto de propiedades o
atributos (datos) y de comportamiento o funcionalidad (mtodos), 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.
Mtodo
Algoritmo asociado a un objeto (o a una clase de objetos), cuya ejecucin se
desencadena tras la recepcin de un "mensaje". Desde el punto de vista del
comportamiento, es lo que el objeto puede hacer. Un mtodo puede producir
un cambio en las propiedades del objeto, o la generacin de un "evento" con
un nuevo mensaje para otro objeto del sistema.
Evento

Es un suceso en el sistema (tal como una interaccin del usuario con la


mquina, o un mensaje enviado por un objeto). El sistema maneja el evento
enviando el mensaje adecuado al objeto pertinente. Tambin se puede definir
como evento la reaccin que puede desencadenar un objeto; es decir, la accin
que genera.

Atributos
Caractersticas que tiene la clase.
Mensaje
Una comunicacin dirigida a un objeto, que le ordena que ejecute uno de sus
mtodos con ciertos parmetros asociados al evento que lo gener.
Constructor
Un constructor es una subrutina cuya misin es inicializar un objeto de una
clase. En el constructor se asignan los valores iniciales del nuevo objeto.
Propiedades
Las propiedades combinan aspectos de los campos y de los mtodos. Para el
usuario de un objeto, una propiedad es similar a un campo, el acceso a la
propiedad requiere la misma sintaxis. Para el implementador de una clase, una
propiedad es uno o dos bloques de cdigo que representan un descriptor de
acceso get y un descriptor de acceso set. El bloque de cdigo para el descriptor
de acceso get se ejecuta cuando se lee la propiedad; el bloque de cdigo para
el descriptor de acceso set se ejecuta cuando se asigna un nuevo valor a la
propiedad. Una propiedad sin un descriptor de acceso set se considera de slo
lectura. Una propiedad sin un descriptor de acceso get se considera de slo
escritura. Una propiedad con ambos descriptores de acceso es de lectura y
escritura.
Recursividad
Funciones que, para poder resolver un problema, se llamarn a s mismas
tantas veces como sea necesario.
Enumeraciones
Las enumeraciones son una serie de valores constantes (de tipo numrico),
que de alguna forma estn relacionadas entre s. A diferencia de las constantes
normales, una variable declarada como una enumeracin, puede tomar
cualquiera de los valores indicados en la enumeracin.
Estructuras
Tipos de datos personalizados. Una estructura representa un nuevo tipo
definido por el desarrollador. Conjunto de datos agrupados. Los datos de la
estructura se conocen como campos. Las estructuras no se limitan a contener

otros tipos de datos, tambin pueden incluir funcionalidad. Es posible tambin


crear funciones.
Clases abstractas
Con frecuencia, cuando se disea un modelo orientado a objetos es til
introducir clases a cierto nivel que pueden no existir en la realidad pero que
son construcciones conceptuales tiles. Estas clases se conocen como clases
abstractas. Una clase abstracta normalmente ocupa una posicin adecuada en
la jerarqua de clases que le permite actuar como un depsito de mtodos y
atributos compartidos para las subclases de nivel inmediatamente inferior.
Las clases abstractas no tienen instancias directamente. Se utilizan para
agrupar otras clases y capturar informacin que es comn al grupo. Sin
embargo, las subclases de clases abstractas que corresponden a objetos del
mundo real si pueden tener instancias.
Interface
Podemos definir las interfaces como la definicin de un conjunto de miembros
que sern comunes entre clases que sern (o no) completamente distintas. La
interface conoce cmo ser la funcionalidad de cualquier clase que la
implemente pero, lgicamente, no podr conocer los detalles de esa
implementacin en cada una de esas clases, de modo que una interface no
puede implementar nada de cdigo, sino que, nicamente, puede describir un
conjunto de miembros.
Las interfaces tienen una funcin similar a las clases abstractas, con una sutil
diferencia, en estas no se puede crear cdigo alguno, solo es posible declarar
las propiedades y funciones que contendrn aquellas clases que implementen
la interfaz.

Abstraccin: proceso mental de extraccin de las caractersticas esenciales


de algo, ignorando los detalles superfluos.
Encapsulacin: proceso por el que se ocultan los detalles del soporte de las
caractersticas esenciales de una abstraccin.
Modularizacin: proceso de descomposicin de un sistema en un conjunto de
mdulos o piezas independientes y cohesivas (con significado propio). Lo
adecuado es conseguir los mnimos acoplamientos.
Jerarquizacin: proceso de estructuracin por el que se produce una
organizacin (jerarqua) de un conjunto de elementos en grados o niveles de
responsabilidad, incumbencia o composicin entre otros.
Polimorfismo: En programacin orientada a objetos, el polimorfismo se refiere
a la propiedad por la que es posible enviar mensajes sintcticamente iguales a
objetos de tipos distintos. El nico requisito que deben cumplir los objetos que

se utilizan de manera polimrfica es saber responder al mensaje que se les


enva.
Una de las caractersticas fundamentales de la OOP es el polimorfismo, que no
es otra cosa que la posibilidad de construir varios mtodos con el mismo
nombre, pero con relacin a la clase a la que pertenece cada uno, con
comportamientos diferentes. Esto conlleva la habilidad de enviar un mismo
mensaje a objetos de clases diferentes. Estos objetos recibiran el mismo
mensaje global pero responderan a l de formas diferentes; por ejemplo, un
mensaje "+" a un objeto ENTERO significara suma, mientras que para un
objeto STRING significara concatenacin ("pegar" strings uno seguido al otro).

También podría gustarte