PROGRAMACIÓN ORIENTADA A OBJETOS(POO)Ing. Orlando Iparraguirre Villanuevawww.orvii.comE-mail: ivoc_ip@hotmail.comCV: www.v...
Agenda           0    Programación Orientado Objetos(POO)           1     Clases           2     Objetos      ✓    3     M...
¿Programación Orientado Objetos?      El significado de Orientado a Objetos nace como un conjunto de practicas que define...
Clases     Clases: Generalmente, una clase se puede definir como una descripción abstracta     de un grupo de objetos.    ...
Objetos     Objetos: Un objeto, no es más que una instancia de una clase. La instancia de     una clase significa definir ...
Métodos: Constructor y destructor     El constructor es un método especial de una clase. El objetivo fundamental del     c...
Métodos: Constructor y destructor     El destructor: Otro método que se ejecuta automáticamente(destructor de la clase)   ...
Terminología de la POO       • Miembro Público: Atributo o método de una clase que         puede ser accesado desde cualqu...
Terminología de la POO      class NombreClase {                 [public | private | protected ] $nombreVariable;          ...
Construcción y Manipulación de Objetos      Creación de un objeto      $objeto = new NombreClase($parametros);      Acc...
Frameworks de desarrollo de software  Symphony                             CakePHP              Zend Framework    1       ...
¿Por qué utilizar Frameworks      Zend Framework es un framework híbrido             Componentes usables de modo stand-al...
¿Por qué utilizar Framework   MVC              Paradigma de programación nacido en 1978 de la mano de Xerox PARC.        ...
¿Por qué utilizar Framework    9 Razones para usar Framework     1.     Las clases se extienden como si no hubiera mañana....
¿Ejercicios Propuestos1. Confeccionar una clase Empleado, definir como atributos su nombre y sueldo. Definir un método    ...
Conclusiòn                      “Si he llegado más lejos ha sido                    apoyado en los hombros de gigantes”   ...
GRACIAS POR SU  ATENCIÒN
Próxima SlideShare
Cargando en…5
×

La programación orientado a objetos

1.104 visualizaciones

Publicado el

0 comentarios
1 recomendación
Estadísticas
Notas
  • Sé el primero en comentar

Sin descargas
Visualizaciones
Visualizaciones totales
1.104
En SlideShare
0
De insertados
0
Número de insertados
21
Acciones
Compartido
0
Descargas
0
Comentarios
0
Recomendaciones
1
Insertados 0
No insertados

No hay notas en la diapositiva.

La programación orientado a objetos

  1. 1. PROGRAMACIÓN ORIENTADA A OBJETOS(POO)Ing. Orlando Iparraguirre Villanuevawww.orvii.comE-mail: ivoc_ip@hotmail.comCV: www.visualcv.com/orlando
  2. 2. Agenda 0 Programación Orientado Objetos(POO) 1 Clases 2 Objetos ✓ 3 Métodos : constructor y destructor 4 Terminología de la POO 5 Construccion y Manipulacion de Objetos 6 Patrones de desarrollo que utilizan POO 7 Ejercicios Propuestos y conclusionesIng. Orlando Iparraguirre Villanueva CV: www.visualcv.com/orlando E-mail: ivoc_ip@hotmail.com
  3. 3. ¿Programación Orientado Objetos? El significado de Orientado a Objetos nace como un conjunto de practicas que definen un estilo de programación. Los seres humanos perciben el mundo como si estuviera formado por objetos: mesas, sillas, computadoras, coches, cuentas bancarias, etc. Donde consiente o inconscientemente tienden a organizarlos, clasificarlos, relacionarlos entre si, y hasta extraen las características más importantes dependiendo de lo que quieren hacer con ellas. Figura Vehículo AnimalIng. Orlando Iparraguirre Villanueva CV: www.visualcv.com/orlando E-mail: ivoc_ip@hotmail.com
  4. 4. Clases Clases: Generalmente, una clase se puede definir como una descripción abstracta de un grupo de objetos. Es un molde del que luego se pueden crear múltiples objetos con similares características. class Lavadora{ private $nombre; public function __construct($nom) { Lavadora $this->nombre=$nom; marca } modelo public function Programar() { capacidad... Programar // implementamos la logica……. PonerRopa // return // retornamos un valor ……. } CerrarPuerta Lavar public function CerrarPuerta() { // implementamos la logica para cerrar la puerta……. // return // retornamos un valor ……. } }Ing. Orlando Iparraguirre Villanueva CV: www.visualcv.com/orlando E-mail: ivoc_ip@hotmail.com
  5. 5. Objetos Objetos: Un objeto, no es más que una instancia de una clase. La instancia de una clase significa definir un objeto dándole valores a sus atributos y comportamiento, y realizando operaciones permitidas por la clase. ID:Lavadora $GetLavadora=new Lavadora(); marca=“Lapava” capacidad=5 estado=enjuagando $GetLavadora->Programar(); $GetLavadora->CerrarPuerta(); Debemos crear una clase antes de poder crear objetos (instancias) de esa clase. Al crear un objeto de una clase, se dice que se crea una instancia de la clase o un objeto propiamente dicho.Ing. Orlando Iparraguirre Villanueva CV: www.visualcv.com/orlando E-mail: ivoc_ip@hotmail.com
  6. 6. Métodos: Constructor y destructor El constructor es un método especial de una clase. El objetivo fundamental del constructor es inicializar los atributos del objeto que creamos. Otras características de los constructores: El constructor se ejecuta inmediatamente luego de crear un objeto y no puede ser llamado nuevamente. Un constructor no puede retornar dato. Un constructor puede recibir parámetros que se utilizan normalmente para inicializar atributos. public function __construct([parámetros]) { [algoritmo] }Ing. Orlando Iparraguirre Villanueva CV: www.visualcv.com/orlando E-mail: ivoc_ip@hotmail.com
  7. 7. Métodos: Constructor y destructor El destructor: Otro método que se ejecuta automáticamente(destructor de la clase) Otras características: El objetivo principal es liberar recursos que solicito el objeto(conexión a la base de datos, creación de imágenes dinámicas). Es el ultimo método que se ejecuta de la clase. Se ejecuta de forma automática, es decir no tenemos que llamarlo. No retorna valores public function __ destruct() { imageDestroy($this->imagen); }Ing. Orlando Iparraguirre Villanueva CV: www.visualcv.com/orlando E-mail: ivoc_ip@hotmail.com
  8. 8. Terminología de la POO • Miembro Público: Atributo o método de una clase que puede ser accesado desde cualquier parte del programa. • Miembro Privado: Atributo o método de una clase que puede ser accesado solo dentro de esa clase. • Miembro Protegido: Atributo o método de una clase que puede ser accesado desde esa clase y sus clases heredadas.Ing. Orlando Iparraguirre Villanueva CV: www.visualcv.com/orlando E-mail: ivoc_ip@hotmail.com
  9. 9. Terminología de la POO class NombreClase { [public | private | protected ] $nombreVariable; [public | private | protected ] function nombreMetodo($parametros) { //Cuerpo de la función } [public | private | protected ] function __construct($parametros) { //Cuerpo de la función } function __destruct() { //Cuerpo de la función } }Ing. Orlando Iparraguirre Villanueva CV: www.visualcv.com/orlando E-mail: ivoc_ip@hotmail.com
  10. 10. Construcción y Manipulación de Objetos  Creación de un objeto  $objeto = new NombreClase($parametros);  Acceso a un atributo de una clase  $objeto->variable = valor;  Acceso a un método o función de una clase  $objeto->nombreMetodo($parametros);Ing. Orlando Iparraguirre Villanueva CV: www.visualcv.com/orlando E-mail: ivoc_ip@hotmail.com
  11. 11. Frameworks de desarrollo de software Symphony CakePHP Zend Framework 1 2 2 3 Mvc Mvc, Mvc Orm Ajax Ajax, Ajax Caching, Caching, Caching No templates No templates No templates Fácil aprendizaje Components Bastante soporte Muy Flexible Fácil aprendizajeIng. Orlando Iparraguirre Villanueva CV: www.visualcv.com/orlando E-mail: ivoc_ip@hotmail.com
  12. 12. ¿Por qué utilizar Frameworks Zend Framework es un framework híbrido Componentes usables de modo stand-alone 1 Es fácil empezar a utilizar Zend al estilo PEAR. Sin cambiar el paradigma de la aplicación existente. MVC 2 Implementación completa del Modelo- Vista-Controlador. Amplio soporte de la comunidad Existen más colaboradores libres, que 3 trabajando para Zend. Utilización de PHPUnit para testing (calidad). Zend es la empresa detrás del engine PHP Soporte de otras empresas como IBM o Google.Ing. Orlando Iparraguirre Villanueva CV: www.visualcv.com/orlando E-mail: ivoc_ip@hotmail.com
  13. 13. ¿Por qué utilizar Framework MVC Paradigma de programación nacido en 1978 de la mano de Xerox PARC. Separa el código en 3 partes lógicas: Modelo Vista Controlador 1 Representa el modelo de 2 Contiene la lógica de 3 Representa la acción a datos que va a utilizar la visualización (XHTML para ejecutar el modelo de datos aplicación. aplicaciones web). que va a utilizar la El “sujeto” en una Mezcla la lógica de datos aplicación. aplicación. con las acciones en el El controlador para un controlador, para devolver Debe contener toda la lógica modelo, podría de negocio de la aplicación la salida al usuario. considerarse como el “verbo” Desde aquí se invocará la lógica de negocio contenida en el modelo.Ing. Orlando Iparraguirre Villanueva CV: www.visualcv.com/orlando E-mail: ivoc_ip@hotmail.com
  14. 14. ¿Por qué utilizar Framework 9 Razones para usar Framework 1. Las clases se extienden como si no hubiera mañana. 2. Orientado a objetos. 3. Utilice lo que necesita, olvídate de todo el resto. 4. Ninguna implantación del modelo – Elige tu propia aventura. 5. Integra con lo que quieras. 6. Directrices y Normas. 7. Todo el código es culpable hasta que se demuestre lo contrario (Test de desarrollo). 8. Comunidad y Documentación. 9. Certificaciones hoy.Ing. Orlando Iparraguirre Villanueva Fuente: nettutus CV: www.visualcv.com/orlando E-mail: ivoc_ip@hotmail.com
  15. 15. ¿Ejercicios Propuestos1. Confeccionar una clase Empleado, definir como atributos su nombre y sueldo. Definir un método inicializar que lleguen como dato el nombre y sueldo. Plantear un segundo método que imprima el nombre y un mensaje si debe o no pagar impuestos (si el sueldo supera a 5000 paga impuestos).2. Confeccionar una clase Menu. Permitir añadir la cantidad de opciones que necesitemos. Mostrar el menú en forma horizontal o vertical (según que método llamemos).3. Confeccionar una clase CabeceraPagina que permita mostrar un título, indicarle si queremos que aparezca centrado, a derecha o izquierda, además permitir definir el color de fondo y de la fuente. Seguir el enlace para desarrollar la actividad de la sesiónIng. Orlando Iparraguirre Villanueva Fuente: nettutus CV: www.visualcv.com/orlando E-mail: ivoc_ip@hotmail.com
  16. 16. Conclusiòn “Si he llegado más lejos ha sido apoyado en los hombros de gigantes” Isaac Newton (1642-1727)Ing. Orlando Iparraguirre Villanueva Fuente: nettutus CV: www.visualcv.com/orlando E-mail: ivoc_ip@hotmail.com
  17. 17. GRACIAS POR SU ATENCIÒN

×