1Introduccion a La POO

23

description

introducción programacion orientada a objetos

Transcript of 1Introduccion a La POO

Page 1: 1Introduccion a La POO
Page 2: 1Introduccion a La POO

Taller de Programación I

Introducción a la POORoman Gajardo

Page 3: 1Introduccion a La POO

Agenda

Page 4: 1Introduccion a La POO

Programación Orientada a Objetos• Es una manera de construir software basada

en un nuevo de paradigma.

• Propone resolver problemas de la realidad a través de identificar objetos y relaciones de colaboración entre ellos.

• El objeto y el mensaje son sus elementos fundamentales

Page 5: 1Introduccion a La POO

Que es una clase?

• Clase Clasificación• Clasificación en base a comportamiento y

atributos comunes.• Crea un vocabulario

• La forma en que nos comunicamos• La forma en que pensamos.

Page 6: 1Introduccion a La POO

Que es una clase?

• Describe:• Comportamiento común• Atributos [estado]

• Estructuras de datos• Incluye:

• Datos• Funciones o métodos

Page 7: 1Introduccion a La POO

Que es una clase?

• Representa un modelo o un plano, del cual se pueden crear instancias u objetos

Page 8: 1Introduccion a La POO

Que es una clase?

• representación

Page 9: 1Introduccion a La POO

Que es un objeto?

• Instancia de una clase• Un objeto posee

• Identidad: relación única entre el objeto del modelo y el ente de la realidad que representa.

• Comportamiento: resuelve un conjunto particular de problemas a través de su protocolo.

• Estado: Almacena información• Fija

• Variable

Page 10: 1Introduccion a La POO

Pilares de la POO

PolimorfismoPolimorfismoHerenciaHerencia

AbstracciónAbstracción

EncapsulamientoEncapsulamiento

Page 11: 1Introduccion a La POO

Abstracción

• Ignorancia selectiva• Decide que es importante y que no lo es• Utiliza la encapsulación para reforzar la

abstracción

Page 12: 1Introduccion a La POO

Encapsulamiento

Acelera()

velocidad

Frena()

125 km/h

40 km/h

300 km/h

Page 13: 1Introduccion a La POO

Por que utilizar encapsulamiento?

• Dos grandes razones• Control• cambio

Page 14: 1Introduccion a La POO

Encapsulamiento

• Los métodos son públicos: son accesibles desde fuera

• Los datos son privados: accesibles desde dentro.

Acelera()

velocidad

Frena()

Controlador del Motor

Page 15: 1Introduccion a La POO

Encapsulamiento

• Color: Azul• Color2: Gris• Instrumental Digital• Ventanas Eléctricas• 4 asientos

• Describe los objetos de forma individual

• Color: Verde• Color2: Blanco• Instrumental Digital• 2 asientos

Page 16: 1Introduccion a La POO

Datos estáticos

• Describen información para todos los objetos

• Numero de llantas: 4• Capacidad del tanque: 40 litros

Page 17: 1Introduccion a La POO

Métodos estáticos

• Sólo pueden acceder a datos compartidos por todas las instancias de la clase-

• Encapsula los datos estáticos• Son invocados en la clase, no en el objeto

• No es necesaria la creación de una instancia para invocarlos.

Page 18: 1Introduccion a La POO

Métodos Estáticos

Automóvil

NumeroLlantas()CapacidadTanque()TipoTransmision()

llantastanque

transmision

Page 19: 1Introduccion a La POO

Herencia

• Es ‘un tipo de’ relación• Relación ‘es un’

• Entre clases• Va de la generalización a la especialización• Clase base• Clase derivada• Hereda la implementación

Automóvil

Transporte

Acelera

Frena

Page 20: 1Introduccion a La POO

Jerarquía de Herencia Ejemplo

Page 21: 1Introduccion a La POO

Herencia

• Singular: La clase hija deriva de una única clase padre.

• Múltiple: La clase hija deriva de varias clases padre.

• No es soportada por todos los lenguajes• Puede ser confusa

1-Persona TerrestreNieve

Page 22: 1Introduccion a La POO

METODOS.

Page 23: 1Introduccion a La POO

AQ&Q U E S T I O N SQ U E S T I O N S

A N S W E R SA N S W E R S