Diapositiva 1

Anuncio
Lenguaje de Programación I
Programación Orientada a Objetos
Orientación a Objetos
 “El mundo real está compuesto
de objetos que interactúan.”
Programación Orientada a Objetos (POO)
 Se usan objetos para solucionar problemas, que son
estructuras lógicas que representan elementos o entidades
del mundo real.
 Se usan nombres que permiten hacer una rápida
asociación con el correspondiente objeto.
Programación Orientada a Objetos (POO)
 Se usan atributos o propiedades para representar los
estados del objeto.
 Se usan métodos que describen el comportamiento del
objeto y permite interacción con otros objetos.
POO: Ejemplo1
Objeto (Moto) en el mundo real
POO : Ejemplo1
Métodos:
•Avanzar()
•Frenar()
•CambiarCambio()
•Acelerar()
•MoverManubrio()
Representación lógica de la “Moto” -> Clase Moto
Atributos:
•marca
•color
•cc
•Velocidad_maxima
•peso_maximo
•Velocidad_actual
Definiciones
 Objetos:
– Mundo Real: Compuesto de objetos físicos y simbólicos.
– POO: Elementos simbólicos que representan objetos del mundo
real.
 Clase:
– “Un tipo de objeto”, descripción que especifica características
comunes a un objeto de un tipo en común.
Definiciones
 Instancia de objeto:
– Objeto específico de una Clase que se puede relacionar con otras
instancias del mismo u otro tipo.
– Se le conoce como el “objeto” en sí.
– Por los atributos una instancia es diferente a otra.
Definiciones
• Objeto real: Moto.
• Clase: “Moto”.
 Instancia1:
– Moto Kawasaki, Amarilla, 250 cc, peso máximo 300 kg, 200 km
velocidad máxima.
 Instancia 2:
– Moto Scooter YY-150T-12, 150 cc, peso máximo 120 kg, 80 km
velocidad máxima.
POO : Ejemplo2
Objeto (Soldado) en el mundo real
POO : Ejemplo2
Métodos:
•Morir()
•Atacar()
•CambiarArma()
•Avanzar()
•Correr()
•Girar()
Atributos:
•armas
•arma_actual
•daño
•velocidad
•posicion
Representación lógica del “Soldado” -> Clase Soldado
POO : Ejemplo3
Objeto (Zombie) en el “mundo real”
POO : Ejemplo3
Métodos:
•Morir()
•Atacar()
•Avanzar()
•Correr()
•Gritar()
•Contagiar()
Atributos:
•estado
•daño
•cantidad_sangre
•tipo
•velocidad
Representación lógica del “Zombie” -> Clase Zombie
POO: Ejemplo4
Objeto (Auto) en el mundo real
POO : Ejemplo4
Métodos:
•Avanzar()
•Frenar()
•CambiarCambio()
•Acelerar()
•Girar()
Representación lógica de la “Auto” -> Clase Auto
Atributos:
•marca
•color
•cilindraje
•Velocidad_maxima
•Velocidad_actual
POO: Ejemplo5
Objeto (Rifle) en el mundo Arma
POO : Ejemplo5
Métodos:
•Disparar()
•CargarBala()
•CargarCartucho()
Representación lógica de la “Arma” -> Clase Arma
Atributos:
•tipo
•stock_balas
•tamaño
POO: Ejemplo6
Objeto (Avion) en el mundo real
POO : Ejemplo6
Métodos:
•Disparar()
•LanzarMisiles()
•GirarArriba()
•GirarLado()
•AplicarTurbo()
Representación lógica del “Avion” -> Clase Avion
Atributos:
•tipo
•velocidad_maxima
•velocidad_actual
•stock_misiles
•posicion
POO: Ejercicio
Métodos:
Representación lógica del “Boss” en 1943
Atributos:
POO: Ejercicio
Métodos:
Atributos:
Representación lógica del “Jugador” en Winning Eleven
POO : Ejemplo1
Métodos:
Representación lógica de la “Rayo” -> Clase Rayo
Atributos:
POO : Ejemplo1
Métodos:
Representación lógica de “Jesus” -> Clase Jesus
Atributos:
Orientación a Objetos
Fuego
Soldado
Soldado
Rifle
Soldado
Pasto
Rifle
Humo
Orientación a Objetos
 Expresa una solución como un conjunto de objetos, que
colaboran entre ellos para realizar tareas.
 Es más fácil conceptualizar los problemas de esta manera.
 Es más fácil llevar la conceptualización a un programa en sí.
Orientación a Objetos
Tiempo1
Soldado2
PuntajeGanado2
PuntajeGanado1
Soldado3
Fuego1
Bala1Jugador2
RifleJugador1
Fuego2
Jugador2
Jugador1
Cavernicola1
Cavernicola3
Cavernicola2
Soldado1
Tarea
 Enumerar cada uno de los
actores que intervienen en el
videojuego, para los cuales
deberá indicar las clases,
métodos y atributos que tiene.
Descargar