Poo

15
1 1 P.O.O.: Programación Orientada a Objetos. Equipo de Arquitectura Equipo de Arquitectura

description

Programacion Orientada a Objetos Imagemaker IT

Transcript of Poo

Page 1: Poo

1 1

P.O.O.: Programación Orientada a Objetos. 

Equipo de ArquitecturaEquipo de Arquitectura

Page 2: Poo

2 2

POO: Introducción

La programación Orientada a objetos (POO) es una forma especial de programar, más cercana a como expresaríamos las cosas en la vida real que otros tipos de programación.

Con la POO tenemos que aprender a pensar las cosas de una manera distinta, para escribir nuestros “programas” en términos de objetos, propiedades, métodos.

Olvidemos la programación estructurada, la POO es un concepto distinto y difícil de abordar sin el cambio de switch.

C++, Java, Ruby, Python, Object Pascal, Visual .net, Delphi, etc...

Page 3: Poo

3 3

POO: Lenguajes Orientados a Objetos

¿Cuáles son las ventajas de un lenguaje orientado a objetos?

Fomenta la reutilización y extensión del código.Permite crear sistemas más complejos.Relacionar el sistema al mundo real.Facilita la creación de programas visuales.Construcción de prototiposAgiliza el desarrollo de softwareFacilita el trabajo en equipoFacilita el mantenimiento del software

Page 4: Poo

4 4

POO: Las bases.

Encapsulamiento

Herencia

Polimorfismo

Abstracción

Page 5: Poo

5 5

POO: Abstracción

Cada vez que pronunciamos una palabra, realmente lo que hacemos es asociar ese sonido (o ese conjunto de garabatos al escribir) con una serie de cosas. Decimos que una ave es tal cosa, que una silla es tal otra, etc.Cuando aplicamos la POO, lo primero que debemos hacer, es cumplir con una vieja máxima de guerra: Divide y Vencerás.

Page 6: Poo

6 6

POO: Encapsulamiento

Tambien es conocido como “ocultamiento”.

Cuando nos acostamos a ver televisión no nos preocupamos del modo como éste funciona, o lo que hace para cambiar de canal o aumentar el volumen. A menos que seamos expertos en electrónica o técnico en televisores: no lo sabemos y no nos importa; sólo sabemos que al presionar un botón ocurre la “magia”.

PublicPrivateProtected

Page 7: Poo

7 7

POO: Herencia

La herencia es la capacidad que tiene una clase de derivar las propiedades y métodos de otra.

Decimos que una gallina es un ave; esto quiere decir que las gallinas tienen características comunes con otras aves (pico, plumas, etc.), es decir que la gallina hereda las características comunes de todas las aves.

La herencia nos permite, entre otras cosas, evitar tener que escribir el mismo código una y otra vez, puesto que al definir que una categoría (que en programación llamaremos clase) pertenece a otra, automáticamente estamos atribuyéndoles las características generales de la primera, sin tener que definirlas de nuevo.

Page 8: Poo

8 8

POO: Herencia

Ejemplo de Herencia:

Page 9: Poo

9 9

POO: Herencia

Ejemplo clásico de Herencia:

Page 10: Poo

10 10

POO: Polimorfismo

Se refiere a la capacidad para que varias clases derivadas de una antecesora utilicen un mismo método de forma diferente.

Ejemplo típico:

Métodos:-perímetro.-área.

Atributos:-cantidad de lados.-tamaño de lados [ ]

Page 11: Poo

11 11

POO: Sobrecarga

En POO se refiere a la posibilidad de tener dos o más métodos con el mismo nombre pero funcionalidad diferente. El compilador usará una u otra dependiendo de los parámetros usados. A esto se llama sobrecarga de funciones.También existe la sobrecarga de operadores que al igual que con la sobrecarga de funciones se le da más de una implementación a un operador.

Page 12: Poo

12 12

POO: Qué es una Clase?

La clasificación es algo que hacemos todos los días, a cada momento (entre otras cosas, nos libra de utilizar medias como guantes o bañarnos en el comedor en vez de en la ducha). Cada vez que decimos que algo es alguna cosa, estamos clasificándolo, asociándolo a una clase.

En la POO una clase no es más que una serie de código que define a todos los elementos relacionados con ella. Así, podríamos escribir la clase Ave colocando en ella todas las características que tienen las aves (pico, color, alto, ancho, patas,…) esas características las llamaremos en POO, propiedades.

Pero la cosa no termina allí, resulta que las aves tienen también ciertos mecanismos específicos, como comer, dormir, reproducirse, etc. Estos mecanismos los llamamos métodos.

Por último, también sabemos que las aves reaccionan ante ciertos sucesos, como peligro, atracción, defensa. A esto lo llamaremos eventos.

Page 13: Poo

13 13

POO: Qué es una Clase?

Page 14: Poo

14 14

POO: Qué es una Instancia?

Una clase es como la definición de un objeto, pero no es el objeto en sí, del modo como una idea no es una cosa física. Así que necesitamos convertir esa idea en algo, en un objeto real; a ese objeto lo llamamos instancia.Cada vez que creamos una nueva instancia, ésta adquiere las propiedades, métodos y eventos de la clase a la que pertenece (es lo que permite la relación es un).

Page 15: Poo

15 15

Dudas?Dudas?

Equipo de ArquitecturaEquipo de Arquitectura