3. Programación Orientada a Objetos
¿Qué es la POO?
• Un método de implementación en el que los programas se organizan como
colecciones cooperativas de objetos, cada uno de los cuales representan una
instancia de alguna clase, y cuyas clases son todas miembros de una jerarquía
de clases unidas mediante relaciones de herencia.
Internet
S.O Config
Incentido
4. Programación Orientada a Objetos
¿Qué es la POO?
• Un método de implementación en el que los programas se organizan como
colecciones cooperativas de objetos, cada uno de los cuales representan una
instancia de alguna clase, y cuyas clases son todas miembros de una jerarquía
de clases unidas mediante relaciones de herencia.
1.- Incentido
2.- S.O
3.- Config
4.- Internet
5. Programación Orientada a Objetos
¿Qué es la POO?
• Un método de implementación en el que los programas se organizan como
colecciones cooperativas de objetos, cada uno de los cuales representan una
instancia de alguna clase, y cuyas clases son todas miembros de una jerarquía
de clases unidas mediante relaciones de herencia.
1.- Incentido
CLASE
2.- S.O Acceso_Internet
Atributos
Funciones()
3.- Config
Procedimientos()
4.- Internet
6. Programación Orientada a Objetos
¿Qué es la POO?
• Un método de implementación en el que los programas se organizan como
colecciones cooperativas de objetos, cada uno de los cuales representan una
instancia de alguna clase, y cuyas clases son todas miembros de una jerarquía
de clases unidas mediante relaciones de herencia.
CLASE PADRE
Acceso_Internet
Atributos
Encendido Funciones()
Configuracion
Procedimientos()
Atributos Atributos
Funciones() Funciones()
Procedimientos() Procedimientos()
CLASE HIJO CLASE HIJO
7. Programación Orientada a Objetos
Objetos
• Un objeto es una entidad que contiene los atributos que describen el estado
de un objeto del mundo real y las acciones que se asocian con el objeto del
mundo real.
• La existencia de un objeto dependerá del contexto del problema.
• El nombre que se utilice para identificar un obj. debe ser razonable para no
crear objs. que no tengan identidad coherente.
Objeto instancia Clase
Datos o atributos Objeto: Auto 1
Dato1 Número_de_matricula
Dato2
Dato3 Fabricante
Procedimientos o Funciones
Precio_Compra
Precio_Actual
Procedimiento() Fecha_Compra
Función( )
Calcular precio actual ()
8. Programación Orientada a Objetos
Estado de un objeto
• Secciones: públicas y privadas
OBJETO
Privado
No accesible Dato o atributos y
desde el procedidmientos y
exterior funciones
Público
Dato o atributos y Accesible desde
procedidmientos y el exterior
funciones (Interfaz pública)
9. Programación Orientada a Objetos
Métodos y Mensajes
• Los procedimientos o funciones son los que cambian el estado
de un objeto, a través del paso de mensajes (con parámetros o
sin ellos) entre si.
Objeto 1
Datos
Función miembro
Objeto 2 Objeto 3
Proced. miembro
Datos Datos
Función miembro Función miembro
Proced. miembro Proced. miembro
10. Programación Orientada a Objetos
Métodos y Mensajes
• Los objetos se comunican unos con otros llamando
a funciones o procedimientos, los mismos que
residen en el objeto y determinan como actúan
cuando reciben el mensaje.
Llegada
De mensajes
Métodos
11. Programación Orientada a Objetos
Clases
• Conjunto de objetos.
• Consta de métodos y datos (atributos) que resumen
características comunes de un conjunto de objetos.
• Plantilla que sirve para hacer objetos cuando se crean a partir de
una clase, estos objetos tendrá los mismos atributos y métodos
que posee la clase (herencia).
Mouse
CP
OBJETOS
Teclado
Clase: Hardware
12. Programación Orientada a Objetos
Clase Hardware
• Nos podemos comunicar con los objetos derivados de la clase
hardware: cp, mouse, teclado, etc. Con el siguiente formato.
<Objeto A>.<Método 1 (parametro1,…parametroN)>
Ejemplo de comunicación entre objetos:
NomObjeto.Encender_CP()
NomObjeto.Mover_Mouse(posicion)
NomObjeto.Apagar_CP()
13. Programación Orientada a Objetos
Almacenamiento de clases:
• Los objetos ocupan espacio en memoria y en
consecuencia existen en el tiempo por que se
crearse e instancian. Por tal razón, se debe liberar
el espacio en memoria ocupado por los objetos.
Constructor: una operación que crea un objeto y/o inicializa su
estado.
Destructor: una operación que libera el estado de un objeto
y/o destruye.
14. Programación Orientada a Objetos
Práctica lo aprendido.
• Desarrolle un paquete de librerías (clases) los cuales realicen las
4 operaciones básicas y adicionalmente las avanzadas
(seno, cose, etc.). Aplique sus conocimientos de programación
orientada a objetos POO.
ACCIONES obj: CLASE
Suma
Resta
calculadora
Coseno atributos TIPO
Seno Procedimientos()
Multiplicacion
Funciones()
Division
Resta
15. Programación Orientada a Objetos
Práctica de Implementación de todo lo aprendido.
Desarrollamos inicialmente la solución en un diagrama.
calculadora Clase padre
douResultado
fucObtenerResultado()
avanzada basica
intValor2 intValor1
subSeno(n1) Clases hijo subSuma(n1, n2)
subCoseno(n1) subResta(n1, n2)
subTangente(n1) subMultiplicacion(n1, n2)
subDivision(n1, n2)
16. Programación Orientada a Objetos
Definicion de clases
Definición de la clase base CALCULADORA
calculadora
douResultado
fucObtenerResultado()
17. Programación Orientada a Objetos
Definicion de clases
Definición de la clase base AVANZADA
avanzada
intValor2
subSeno(n1)
subCoseno(n1)
subTangente(n1)
18. Programación Orientada a Objetos
Definicion de clases
Definición de la clase base BASICA
basica
intValor1
subSuma(n1, n2)
subResta(n1, n2)
subMultiplicacion(n1, n2)
subDivision(n1, n2)
19. Programación Orientada a Objetos
Uso del paquete de librerias.
Llamado de las clases usando objetos a travez de una
aplicación o formulario de Windows.
basica
intValor1
subSuma(n1, n2)
Llama subResta(n1, n2)
subMultiplicacion(n1, n2)
subDivision(n1, n2)
20. Programación Orientada a Objetos
Uso del paquete de librerias.
Llamado de las clases usando objetos a travez de una
aplicación o formulario de Windows.
avanzada
intValor2
subSeno(n1)
Llama subCoseno(n1)
subTangente(n1)
21. Referencias:
Bibliográficas
LUÍS, JOYANES AGUILAR. (2003): “Fundamentos de
Programación, Algoritmos, Estructuras de Datos y Objetos.”
Mc-Graw Hill. Madrid.
Fco. JAVIER, CEBALLOS S. (2003): “El lenguaje de
programación Visual Basic.NET”. Alfaomega Ra-Ma. Madrid.
Direcciones Electrónicas
MSDN ONLINE: http://msdn.microsoft.com/es-
es/library/default.aspx
Otros medios
Microsoft Corporation (2008): Microsoft Document Explore
Version 8.0.50727.42, actualizado 06 de diciembre de 2007
(citado 25 de Marzo del 2009). Disponible a través de: MSDN
Library para Visual Studio 2005 (US).