19
PROGRAMACION ORIENTADA A OBJETOS

1.-POO

Embed Size (px)

DESCRIPTION

PROGRAMACIÓN ORIENTADO A OBJETO S

Citation preview

Page 1: 1.-POO

PROGRAMACION ORIENTADA

A OBJETOS

Page 2: 1.-POO

¿QUÉ ES UN OBJETO?

Un objeto no es más que un conjunto de variables (o datos) y métodos (o funciones) relacionados entre sí. Por tanto, la representación en un programa de un concepto, y contiene toda la información necesaria para abstraerlo: datos que describen sus atributos y operaciones que pueden realizarse sobre los mismos.

Page 3: 1.-POO
Page 4: 1.-POO

¿QUÉ ES UN MENSAJE?

Los objetos de un programa interactúan y se comunican entre ellos por medio de mensajes. Cuando un objeto A quiere que otro objeto B ejecute una de sus funciones miembro (métodos de B), el objeto A manda un mensaje al objeto B.

Page 5: 1.-POO
Page 6: 1.-POO

QUE ES LA CLASE? Una clase es una plantilla que define las variables y los métodos que son comunes para todos los objetos de un cierto tipo.En nuestro ejemplo, la clase bicicleta definiría variables miembro comunes a todas las bicicletas, como la marcha actual, la cadencia actual, etc. Esta clase también debe declarar e implementar los métodos o funciones miembro que permiten al ciclista cambiar de marcha, frenar, y cambiar la cadencia de pedaleo, como se muestra en la siguiente figura:

Page 7: 1.-POO
Page 8: 1.-POO

QUE ES LA P.O.O. ?La programación orientada a objetos es una de las técnicas mas modernas que trata de disminuir el costo del software aumentando la eficiencia en la programación y reduciendo el tiempo necesario para el desarrollo de una aplicación. Con la programación orientada a objetos los programas tienen menos líneas de código, menos sentencia de bifurcación y módulos que son mas comprensibles, porque refleja una forma clara la relación existente entre cada concepto a desarrollar y cada objeto que interviene en dicho desarrollo y toma verdadera ventaja en la compartición y reutilización de código.

Page 9: 1.-POO

Para el desarrollo de programas complejos utilizamos la llamada PROGRAMACION ESTRUCTURADA que consiste en descomponer el problema objeto de resolución en subproblemas y más subproblemas hasta llegar a acciones muy simples y fáciles de codificar. Por el ejemplo un programa que resuelva ecuaciones de segundo grado, descomponemos el problema en las siguientes acciones: primero, pedir el valor de los coeficientes a, b y c; después, calcular el valor del discriminante; y por último, en función del signo del discriminante, calcular ninguna, una o dos raíces.

Page 10: 1.-POO

ATRIBUTOS DE LA P.P.O.Los atributos son las características individuales que diferencian un objeto de otro y determinan su apariencia, estado u otras cualidades. Los atributos se guardan en variables denominadas de instancia, y cada objeto particular puede tener valores distintos para estas variables.Las variables de instancia también denominados miembros dato, son declaradas en la clase pero sus valores son fijados y cambiados en el objeto.Además de las variables de instancia hay variables de clase, las cuales se aplican a la clase y a todas sus instancias.

Page 11: 1.-POO

PRINCIPIOS DE LA P.O.O.Existen 6 principales principios de la Programación Orientada a Objetos: 1.- PRINCIPIO ABSTRACCIÓN2.- PRINCIPIO DE ENCAPSULAMIENTO3.- PRINCIPIO DE POLIFORMISMO4.- PRINCIPIOS DE LA HERENCIA5.- PRINCIPIO DE MODULARIDAD 6.- PRINCIPIO DE PASO DE MENSAJES

Page 12: 1.-POO

1.- PRINCIPIO ABSTRACCIÓNAbstraer es suprimir u ocultar parte de la información es una omisión voluntaria de detalles en el desarrollo de un programa o una representación abstracta

Page 13: 1.-POO

2.- PRINCIPIO DE ENCAPSULAMIENTO

El “Encapsulamiento” le permite decidir al programador de objetos que información dar a conocer y cual información ocultar al resto de objetos, no olvidar que los objetos pueden estar conformados por otros objetos

Page 14: 1.-POO

3.- PRINCIPIO DE POLIFORMISMOEn programación orientada a objetos se llama polimorfismo a la capacidad que tienen objetos de diferentes clases de responder al mismo mensaje. Lo que quiere decir es que puede haber muchos mensajes con el mismo nombre, en diferentes clases. Cada clase responde al mensaje con su método o código propio.

Page 15: 1.-POO

4.- PRINCIPIO DE LA HERENCIA La herencia permite definir nuevas clases partiendo de otras ya existentes. Las clases que derivan de otras heredan automáticamente todo su comportamiento, pero además pueden introducir características particulares propias que las diferencian.La programación orientada a objetos va más allá, permitiéndonos definir clases a partir de otras clases ya construidas.

Page 16: 1.-POO
Page 17: 1.-POO

5.- PRINCIPIO DE MODULARIDAD La modularidad permite al programador dividir su programa complejo en varios módulos o partes diferentes. Cada uno resolverá una parte de un problema grande, y después interactuarán todos los módulos, como si se armara un rompecabezas. Se basa en la frase “divide y vencerás”.

Page 18: 1.-POO

6.- PRINCIPIO DE PASO DE MENSAJESSon el medio a través del cuál interactúan los objetos, estimulan la ocurrencia de cierto comportamiento en el objeto receptor. Con el paso de mensajes los objetos pueden solicitar a otros objetos que realicen alguna acción o que modifiquen sus atributos. Junto con el paso de mensajes se implementan llamadas a los métodos de un objeto, lo que nos permite hacer que ese objeto realice determinada acción que está dentro de su comportamiento.

Page 19: 1.-POO

EJEMPLO La clase automóvil describe las características comunes de todos los automóviles: sus atributos y su comportamiento. Los atributos o propiedades se refieren a la marca o fabricante, el color, las dimensiones, si tienen dos, tres, cuatro o más puertas, la potencia, si utiliza como combustible la gasolina o gasoil, etc. El comportamiento se refiere a la posibilidad de desplazarse por una carretera, frenar, acelerar, cambiar de marcha, girar.