Sie sind auf Seite 1von 30

Introducción a la Programación Orientada

a Objetos

Tecnologías Software para


Internet
2004
Objetivo
Conocer claramente la tecnología
orientada a objetos

Tecnologías Software para Internet, Erick Arauco, Udep Ets - 2004 2


Programación estructurada Vs
Programación orientada a Objetos
• No puede ser
X 1 Y1 considerada una
Reutilización ??
X 2 X2 „reutilización“ sino un
X 3 X3 típico „copiar y pegar“
X 4 Y4 • En caso que el
X 5 Y5 programa X falle en sus
lineas X2 y X3, con
Programa X Programa Y seguridad el programa Y
Pc 1 Pc 2 fallará en la misma línea

• Costo de
Programación Estructurada mantenimiento muy alto
Caso típico

Tecnologías Software para Internet, Erick Arauco, Udep Ets - 2004 3


Programación estructurada Vs
Programación orientada a Objetos
• Reutilización !!
Obj. X 1 Obj. Y 1
Reutilización !!
Obj. X 2 Obj. X 2 • En caso que el
Obj. X 3 Obj. X 3 programa X falle en sus
objetos X2 y X3 los
Obj. X 4 Obj. Y 4 mismos pueden ser
Obj. X 5 Obj. Y 5 reemplazados y observar
los cambios en el
Programa X Programa Y programa Y
Pc 1 Pc 2
• Costo de
mantenimiento bajo
Programación Orientada a Objetos
Caso típico

Tecnologías Software para Internet, Erick Arauco, Udep Ets - 2004 4


Objetos ???
Objeto 1 Objeto 2

• Necesito retirar • Número de


dinero de mi cuenta ?
cuenta • Cuánto
• 11111111111 necesitas retirar?
• Dos mil soles • Listo !!
• Gracias

• Comunicación entre dos objetos


• Sistema para las transacciones bancarias (Ej: retiro de
dinero de una cuenta X)
Tecnologías Software para Internet, Erick Arauco, Udep Ets - 2004 5
Qué es un objeto ??
Pensando en objetos
Objetos = Todo aquello que nos rodea
Los objetos tienen características como
nombre, tamaño, peso, etc
Además cada objeto se encuentra en
capacidad de realizar una acción
específica (Ej: Objeto cliente, Objeto
cajero)

Tecnologías Software para Internet, Erick Arauco, Udep Ets - 2004 6


De dónde proviene un objeto ??
Cada objeto se encuentra basado en la
definición de una CLASE
Una clase es un tipo de objeto definido
por el usuario
Clase = Molde
Todos los objetos que provienen de
una misma clase tendrán la misma
estructura

Tecnologías Software para Internet, Erick Arauco, Udep Ets - 2004 7


De dónde proviene un objeto ??
Clase
Nombre de la clase
Persona
Instancia de
Nombre la clase
Edad Características, atributos, propiedades persona
Sexo
Objeto 1 Objeto 2

Juan María
23 25
M F

Tecnologías Software para Internet, Erick Arauco, Udep Ets - 2004 8


Instancia ??
• Instanciación: proceso de
Clase
creación de un objeto a partir de
Persona
una clase específica
Nombre
Edad
Sexo
Objeto 1

Juan
23
M

Tecnologías Software para Internet, Erick Arauco, Udep Ets - 2004 9


Métodos
Características = Propiedades,
atributos
Métodos = habilidades
Capacidad de un objeto para realizar
una acción específica

Tecnologías Software para Internet, Erick Arauco, Udep Ets - 2004 10


Métodos
Clase
Persona

Nombre
Edad
Sexo
Todos los objetos que provengan
de esta clase tendrán la habilidad
Caminar ()
para „caminar“

Tecnologías Software para Internet, Erick Arauco, Udep Ets - 2004 11


Explicando graficamente

Clase
Persona

Clase genérica Objetos provenientes


de la clase persona

Tecnologías Software para Internet, Erick Arauco, Udep Ets - 2004 12


Explicando graficamente

No todos somos iguales en este mundo !!!

Tecnologías Software para Internet, Erick Arauco, Udep Ets - 2004 13


Tipos de objetos

• Existen malabaristas, corredores, pintores, etc


• Cada uno de ellos posee una habilidad propia
• Cada uno de ellos es una persona
• Cada uno de ellos posee un nombre, edad, peso y
características similares
Tecnologías Software para Internet, Erick Arauco, Udep Ets - 2004 14
Tipos de objetos

Malabarear ()
Pintar ()
Correr ()

Tecnologías Software para Internet, Erick Arauco, Udep Ets - 2004 15


Agrupando nuestros objetos
Superclase Clase
Persona

Clase Clase Clase


Malabarista Corredor Pintor
Subclase

Objetos
Tecnologías Software para Internet, Erick Arauco, Udep Ets - 2004 16
Superclases - Subclases

Tecnologías Software para Internet, Erick Arauco, Udep Ets - 2004 17


Superclases / Subclases -
Características

Relación entre una superclase –


subclase = Herencia
La clase hija (subclase) heredará todas
las características y habilidades propias
de la clase padre (superclase)

Tecnologías Software para Internet, Erick Arauco, Udep Ets - 2004 18


Superclases / Subclases -
Características
• El padre pintor Padre Pintor
• El hijo puede definir
sus propias
características y
habilidades pero
también heredará las
del padre (Corredor +
Pintor)

Hijo Corredor +
Pintor

Tecnologías Software para Internet, Erick Arauco, Udep Ets - 2004 19


Herencia
La herencia permite el acceso
automático a la información contenida
en otras clases
Reutilización del código garantizado

Tecnologías Software para Internet, Erick Arauco, Udep Ets - 2004 20


Herencia
Las clases que están en la parte
inferior en la jerarquía heredan
de las clases que están en la
Clase
Ordenador
parte superior en la jerarquía

El término „heredar“ significa que


las subclases disponen de todos
Clase
los métodos y propiedades de su
Clase
Ordenador_Sobremesa Ordenador_Portatil superclase. Este mecanismo
proporciona una forma rápida y
cómoda de extender la
funcionalidad de una clase

Tecnologías Software para Internet, Erick Arauco, Udep Ets - 2004 21


Otro ejemplo de Herencia
Figura

Dos Dimensiones Tres Dimensiones

Círculo Cuadrado Triángulo Esfera Cubo


• Es conveniente al momento de definir nuestras clases
también definir los elementos comunes entre ellas, estos
pueden ser agrupados en una clase superior
Tecnologías Software para Internet, Erick Arauco, Udep Ets - 2004 22
Hablemos de Polimorfismo

Qué significaría para cada uno de ellos la orden „actuar“ ??

Tecnologías Software para Internet, Erick Arauco, Udep Ets - 2004 23


Más de Polimorfismo
Cada objeto interpreta una misma
orden de diferente manera
Instrucción Dibujar
Juego de Video
Láser Dibuja el arma
Marcianos Dibuja a los marcianos

Nave espacial Dibuja la nave

Tecnologías Software para Internet, Erick Arauco, Udep Ets - 2004 24


Constructores
Cuando un objeto es instanciado, el
constructor de la clase es ejecutado e
inicializa los valores necesarios

Clase Juan
Persona 25
Nombre M
Edad
Sexo

Const. Persona { Constructor: Cada vez que sea creado


Sexo = „M“ un objeto del tipo „Persona“, su
}
propiedad „Sexo“ será igual a „M“
Tecnologías Software para Internet, Erick Arauco, Udep Ets - 2004 25
Acceso a las clases
Los miembros de una clase pueden ser
públicos (public), protegidos (protected) ó
privados (private)

Public: Pueden ser accedidos desde cualquier


parte del programa

Protected: Pueden ser accedidos sólo por la


misma clase, por alguna clase hija o por otras
clases que se encuentren en el mismo
paquete (Package)
Tecnologías Software para Internet, Erick Arauco, Udep Ets - 2004 26
Acceso a las clases
Private: Sólo accesibles por la misma
clase

Tecnologías Software para Internet, Erick Arauco, Udep Ets - 2004 27


Acceso a las clases
Clase
Persona
„Edad“ sólo
puede ser
controlada por la
clase „Persona“ Nombre (Public)
Edad (Private)
Sexo (Protected)
Clase
Estudiante

Nombre
Sexo
Semestre Hereda de la Clase Persona

Tecnologías Software para Internet, Erick Arauco, Udep Ets - 2004 28


Reutilización de Software
Presente o Futuro ??
RAD (Rapid Applications Development)
Creación de nuevas clases ó utilización
de las ya existentes

Tecnologías Software para Internet, Erick Arauco, Udep Ets - 2004 29


Conclusión
Objeto
Clase, Superclase, Subclase
Propiedades, Métodos
Herencia
Polimorfismo
Acceso a los miembros de una clase

Tecnologías Software para Internet, Erick Arauco, Udep Ets - 2004 30

Das könnte Ihnen auch gefallen