Fundamentos Programaci³n Orientada a Objetos ( POO ) - Parte I
PROGRAMACION ORIENTADA A OBJETOS. Pilares de la POO La poo se basa en tratar de virtualizar los...
-
Upload
jaime-roldan-garcia -
Category
Documents
-
view
212 -
download
0
Transcript of PROGRAMACION ORIENTADA A OBJETOS. Pilares de la POO La poo se basa en tratar de virtualizar los...
![Page 1: PROGRAMACION ORIENTADA A OBJETOS. Pilares de la POO La poo se basa en tratar de virtualizar los objetos de la vida real. ¿Cómo caracterizamos a los objetos.](https://reader036.fdocuments.es/reader036/viewer/2022081908/5665b4e81a28abb57c94aa23/html5/thumbnails/1.jpg)
PROGRAMACION ORIENTADA A OBJETOS
![Page 2: PROGRAMACION ORIENTADA A OBJETOS. Pilares de la POO La poo se basa en tratar de virtualizar los objetos de la vida real. ¿Cómo caracterizamos a los objetos.](https://reader036.fdocuments.es/reader036/viewer/2022081908/5665b4e81a28abb57c94aa23/html5/thumbnails/2.jpg)
Pilares de la POO
• La poo se basa en tratar de virtualizar los objetos de la vida real.
• ¿Cómo caracterizamos a los objetos de la vida real?– Atributos tales como nombre, rut, fechaNacimiento (la
edad se calcula), raza, etc.– Respuesta ante un estímulo, esto se denomina
COMPORTAMIENTO– Identidad
![Page 3: PROGRAMACION ORIENTADA A OBJETOS. Pilares de la POO La poo se basa en tratar de virtualizar los objetos de la vida real. ¿Cómo caracterizamos a los objetos.](https://reader036.fdocuments.es/reader036/viewer/2022081908/5665b4e81a28abb57c94aa23/html5/thumbnails/3.jpg)
Pilares de la POO
• Los objetos tienen una duración:– Los objetos se crean al INSTANCIARLOS– Los objetos responden ante mensajes de otros
objetos (“estimulación”)– Los objetos de destruyen
• Para efectos de virtualización los objetos son creados como clases y se dice que un objeto existe cuando es instanciado a partir de la clase.
![Page 4: PROGRAMACION ORIENTADA A OBJETOS. Pilares de la POO La poo se basa en tratar de virtualizar los objetos de la vida real. ¿Cómo caracterizamos a los objetos.](https://reader036.fdocuments.es/reader036/viewer/2022081908/5665b4e81a28abb57c94aa23/html5/thumbnails/4.jpg)
Pilares de la POO
• Se dice que la clase es una generalización de los objetos que puede instanciar.
• Ejemplo:– Objeto: Un alicate– Identidad: Alicate– Atributos: Material, Color, Tamaño, Peso, Textura,
Tipo, Precio, Estado– Comportamiento: Abierto, Cerrado.
![Page 5: PROGRAMACION ORIENTADA A OBJETOS. Pilares de la POO La poo se basa en tratar de virtualizar los objetos de la vida real. ¿Cómo caracterizamos a los objetos.](https://reader036.fdocuments.es/reader036/viewer/2022081908/5665b4e81a28abb57c94aa23/html5/thumbnails/5.jpg)
Ejemplo: Clase AlicateIdentidad Alicate
Atributos +Material+Color+Peso+Tipo+Textura+Tamaño+Precio+Estado
Comportamiento +Abierto+Cerrado
![Page 6: PROGRAMACION ORIENTADA A OBJETOS. Pilares de la POO La poo se basa en tratar de virtualizar los objetos de la vida real. ¿Cómo caracterizamos a los objetos.](https://reader036.fdocuments.es/reader036/viewer/2022081908/5665b4e81a28abb57c94aa23/html5/thumbnails/6.jpg)
Tipos de Acceso
• Los atributos y métodos se pueden definir como:– Públicos: para ser vistos por todos. (+)
– Privados: solo podrán ser visto o usados por la misma clase (-)
– Protegidos: solo se podrán utilizar por esta clase y las clases heredadas (#)
![Page 7: PROGRAMACION ORIENTADA A OBJETOS. Pilares de la POO La poo se basa en tratar de virtualizar los objetos de la vida real. ¿Cómo caracterizamos a los objetos.](https://reader036.fdocuments.es/reader036/viewer/2022081908/5665b4e81a28abb57c94aa23/html5/thumbnails/7.jpg)
Nombre comportamiento según lenguaje de programación
• En c++ se habla de funciones
• En Java se habla de métodos
• En Visual se habla de subRutinas
![Page 8: PROGRAMACION ORIENTADA A OBJETOS. Pilares de la POO La poo se basa en tratar de virtualizar los objetos de la vida real. ¿Cómo caracterizamos a los objetos.](https://reader036.fdocuments.es/reader036/viewer/2022081908/5665b4e81a28abb57c94aa23/html5/thumbnails/8.jpg)
Funciones (métodos o sub)
• Toda clase ha de tener lo siguiente:– Constructor– set<nombreAtributo> por cada atributo– get<nombreAtributo> por cada atributo.– Destructor– Funciones que automatizan el comportamiento
del objeto
![Page 9: PROGRAMACION ORIENTADA A OBJETOS. Pilares de la POO La poo se basa en tratar de virtualizar los objetos de la vida real. ¿Cómo caracterizamos a los objetos.](https://reader036.fdocuments.es/reader036/viewer/2022081908/5665b4e81a28abb57c94aa23/html5/thumbnails/9.jpg)
Recordar
• Recordar que:– Las funciones de una clase no muestran información– Las funciones reciben o envían datos
• En POO se habla del patrón de diseño:
Modelo – Vista – Controlador(modelo es la bbdd (mySql, Oracle, MsSql, etc),la vista es el formulario {html, applet, asp, php, dart, …}El controlador es la clase que controla los datos
![Page 10: PROGRAMACION ORIENTADA A OBJETOS. Pilares de la POO La poo se basa en tratar de virtualizar los objetos de la vida real. ¿Cómo caracterizamos a los objetos.](https://reader036.fdocuments.es/reader036/viewer/2022081908/5665b4e81a28abb57c94aa23/html5/thumbnails/10.jpg)
Recordar
• Todo lo que es sentencia SQL para manejar el modelo (BBDD) se hace en la controladora.
• La vista no debiera tener acceso a la base de datos.
![Page 11: PROGRAMACION ORIENTADA A OBJETOS. Pilares de la POO La poo se basa en tratar de virtualizar los objetos de la vida real. ¿Cómo caracterizamos a los objetos.](https://reader036.fdocuments.es/reader036/viewer/2022081908/5665b4e81a28abb57c94aa23/html5/thumbnails/11.jpg)
El constructor
• Se llama constructor a una función que permite inicializar los atributos de la clase y es la que se llama al momento de su instanciación.
• En una clase el constructor es una función que tiene el mismo nombre de la clase.
• Puede ser pública o privada
• Cuando el constructor es privado entonces se genera una función que se denomina getInstance().
![Page 12: PROGRAMACION ORIENTADA A OBJETOS. Pilares de la POO La poo se basa en tratar de virtualizar los objetos de la vida real. ¿Cómo caracterizamos a los objetos.](https://reader036.fdocuments.es/reader036/viewer/2022081908/5665b4e81a28abb57c94aa23/html5/thumbnails/12.jpg)
El constructor
• Bueno hemos visto que un constructor se puede generar “by default” (por defecto), sin embargo:
• ¿Qué ocurre si uno desea instanciar un objeto a partir de la clase con datos que uno quiera utilizar?
![Page 13: PROGRAMACION ORIENTADA A OBJETOS. Pilares de la POO La poo se basa en tratar de virtualizar los objetos de la vida real. ¿Cómo caracterizamos a los objetos.](https://reader036.fdocuments.es/reader036/viewer/2022081908/5665b4e81a28abb57c94aa23/html5/thumbnails/13.jpg)
El constructor
• Para instanciar un objeto con valores para los atributos distintos a los por defecto se utiliza lo característica de la POO denominada “sobrecarga”
• Es decir:alicate() { marca = “redLine”;}alicate(string vMarca) { marca = vMarca;}