<? Sesion2    PHP OO y MySQL ?> Hugo Flores Analista de Sistemas hpfloresj.blogspot.com Curso  de PHP Diciembre 29, 2007
Agenda Que es la POO Características de la POO Clases y objetos Atributos y métodos Modificadores de acceso Constructores Sobrecarga de métodos Herencia y Polimorfismo SMDB MySQL operaciones básicas Conexión entre PHP y MySQL Uso de tools para administrar MySQL
Que es la POO “ La POO es un paradigma (modelo) de programación que facilita la creación de software de calidad, utilizando objetos ligados mediante mensajes, trata de amoldarse al modo de pensar del hombre” . Por que Orientado a Objetos? Se parece más al mundo real Permite representar modelos complejos Muy apropiada para aplicaciones de negocios Las empresas ahora sí aceptan la OO Las nuevas plataformas de desarrollo la han adoptado (Java / .NET/PHP)
Características de la POO Encapsulamiento Herencia Abstracción Polimorfismo
Características de la POO Abstracción Ignorancia Selectiva La abstracción nos ayuda a trabajar con cosas complejas Se enfoca en lo importante Ignora lo que no es importante (simplifica) Una clase es una abstracción en la que: Se enfatizan las características relevantes Se suprimen otras características Una clase debe capturar una y solo una abstracción clave
Características de la POO Encapsulamiento Principio que establece que los atributos propios de un objeto no deben ser visibles desde otros objetos Deben ser declarados como privados Permite abstraer al resto del mundo de la complejidad de la implementación interna Permite exponer el estado del objeto sólo a través del comportamiento que le hayamos definido mediante miembros públicos ¿Por qué es útil? Punto de Control/Validación Mejor respuesta ante los Cambios
Características de la POO Herencia Es una relación entre clases en la cual una clase comparte la estructura y comportamiento definido en otra clase (Grady Booch) Cada clase que hereda de otra posee: - Los atributos de la clase base además de los propios - Soporta todos o algunos de los métodos de la clase base Una subclase hereda de una clase base (PHP soporta herencia simple) Clase Base Clases Derivadas o subclases
Características de la POO Polimorfismo Es la propiedad que tienen los objetos de permitir invocar genéricamente un comportamiento (método) cuya implementación será delegada al objeto correspondiente recién en tiempo de ejecución El polimorfismo tiende a existir en las relaciones de herencia, pero no siempre es así
Características de la POO Polimorfismo ejemplo La definición del método reside en la clase base La implementación del método reside en la clase derivada La invocación es resuelta al momento de ejecución Transporte Avanzar Frenar Transporte Avanzar Frenar Transporte Avanzar Frenar Transporte Avanzar Frenar
Polimorfismo seudocódigo Características de la POO
Objeto  -> “Un objeto es un concepto, abstracción o cosa con un significado y límites claros en el problema en cuestión” (Rumbaugh) . Clase  -> Es una abstracción que: Enfatiza las características relevantes (Propiedades y Comportamiento) Suprime otras características (simplificación) Un objeto es una instancia de una clase. (variable cuyo tipo de dato es una clase) Clases y objetos
Clases y objetos PHP: las clases son declaradas mediante class Crear un objeto
Atributos y métodos Una clase, tiene un puntero especial al que podemos referenciar como $this. Si nuestra clase tiene un atributo llamado $atributo, podemos hacer referencia a este desde nuestra clase (métodos) de la siguiente forma $this->atributo Los métodos en PHP se declaran anteponiendo la palabra clave function   y no devuelven algún tipo de datos específico.
Modificadores de acceso PHP5 incorpora nuevos modificadores que permiten controlar la visibilidad de los atributos y métodos y que se añaden delante de las declaraciones. public private protected Por defecto, acceso desde dentro y fuera de la clase. Acceso solo desde dentro de la clase. No se heredan, accedidos por los getters y setters Acceso solo desde dentro de la clase y si Permite herencia en las subclases.
Modificadores de acceso ¿Cuál es el resultado?
Constructor: métodos dentro de la clase que son llamados automáticamente cuando se crea una instancia de dicha clase. Sintaxis Constructores class  claseX { public function  __construct(){...} //Const. por default public function  __construct( $param ){...} }
Ejercicio: Probar la implementación de la siguiente clase Constructores ¿Cuál es el resultado? Probar esta clase
Sobrecarga de métodos Sobrecarga :  varios métodos con el mismo nombre pero diferente “firma”. ¿Algún ejemplo? public function  HacerDeposito( $importe)  { } public function  HacerDeposito( $importe, $acreditar) { }
Herencia y Polimorfismo Herencia Declaración de clases y derivación class  subclase  extends  superclase { //Cuerpo de la clase   }
Ejercicio: Implemantar Herencia y Polimorfismo
Ejercicio: Implemantar Herencia y Polimorfismo
Ejercicio: Implemantar Herencia y Polimorfismo
Herencia y Polimorfismo Polimorfismo
SMDB MySQL operaciones básicas En este apartado comprenderemos como realizar operaciones básicas con MySQL como es insertar, actualizar, leer y eliminar registros de una tabla. SQL de la bd: sistema CREATE TABLE `usuario` (`idUsuario` TINYINT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY , `nombre` VARCHAR( 15 ) NOT NULL , `clave` VARCHAR( 15 ) NOT NULL  );
SMDB MySQL operaciones básicas Funciones de MySQL
Conexión entre PHP y MySQL Operación consultar
Conexión entre PHP y MySQL Operación insertar, actualizar y eliminar se hará en clases y con el uso de la POO para simplificar el trabajo repetitivo.  Para administrar la bd mysql propondremos la utilización de dos herramientas, Navicat y PhpMyAdmin
¿Que se verá en la sesión3? Veremos como crear dos clases de persistencia de base de datos, que nos ayudarán a reutilizar nuestro código en las conexiones con la base de datos MySQL a las que llamaremos DBManager y RecordSet. Desarrollo de una aplicación web con las operaciones báscias CRUD (Create, Retrieve, Update y Delete) a la que llamaremos wbmusic.
https://masterlinegroup.blogspot.com Gracias por su atención

Sesion2 Php Oo Y Mysql

  • 1.
    <? Sesion2 PHP OO y MySQL ?> Hugo Flores Analista de Sistemas hpfloresj.blogspot.com Curso de PHP Diciembre 29, 2007
  • 2.
    Agenda Que esla POO Características de la POO Clases y objetos Atributos y métodos Modificadores de acceso Constructores Sobrecarga de métodos Herencia y Polimorfismo SMDB MySQL operaciones básicas Conexión entre PHP y MySQL Uso de tools para administrar MySQL
  • 3.
    Que es laPOO “ La POO es un paradigma (modelo) de programación que facilita la creación de software de calidad, utilizando objetos ligados mediante mensajes, trata de amoldarse al modo de pensar del hombre” . Por que Orientado a Objetos? Se parece más al mundo real Permite representar modelos complejos Muy apropiada para aplicaciones de negocios Las empresas ahora sí aceptan la OO Las nuevas plataformas de desarrollo la han adoptado (Java / .NET/PHP)
  • 4.
    Características de laPOO Encapsulamiento Herencia Abstracción Polimorfismo
  • 5.
    Características de laPOO Abstracción Ignorancia Selectiva La abstracción nos ayuda a trabajar con cosas complejas Se enfoca en lo importante Ignora lo que no es importante (simplifica) Una clase es una abstracción en la que: Se enfatizan las características relevantes Se suprimen otras características Una clase debe capturar una y solo una abstracción clave
  • 6.
    Características de laPOO Encapsulamiento Principio que establece que los atributos propios de un objeto no deben ser visibles desde otros objetos Deben ser declarados como privados Permite abstraer al resto del mundo de la complejidad de la implementación interna Permite exponer el estado del objeto sólo a través del comportamiento que le hayamos definido mediante miembros públicos ¿Por qué es útil? Punto de Control/Validación Mejor respuesta ante los Cambios
  • 7.
    Características de laPOO Herencia Es una relación entre clases en la cual una clase comparte la estructura y comportamiento definido en otra clase (Grady Booch) Cada clase que hereda de otra posee: - Los atributos de la clase base además de los propios - Soporta todos o algunos de los métodos de la clase base Una subclase hereda de una clase base (PHP soporta herencia simple) Clase Base Clases Derivadas o subclases
  • 8.
    Características de laPOO Polimorfismo Es la propiedad que tienen los objetos de permitir invocar genéricamente un comportamiento (método) cuya implementación será delegada al objeto correspondiente recién en tiempo de ejecución El polimorfismo tiende a existir en las relaciones de herencia, pero no siempre es así
  • 9.
    Características de laPOO Polimorfismo ejemplo La definición del método reside en la clase base La implementación del método reside en la clase derivada La invocación es resuelta al momento de ejecución Transporte Avanzar Frenar Transporte Avanzar Frenar Transporte Avanzar Frenar Transporte Avanzar Frenar
  • 10.
  • 11.
    Objeto ->“Un objeto es un concepto, abstracción o cosa con un significado y límites claros en el problema en cuestión” (Rumbaugh) . Clase -> Es una abstracción que: Enfatiza las características relevantes (Propiedades y Comportamiento) Suprime otras características (simplificación) Un objeto es una instancia de una clase. (variable cuyo tipo de dato es una clase) Clases y objetos
  • 12.
    Clases y objetosPHP: las clases son declaradas mediante class Crear un objeto
  • 13.
    Atributos y métodosUna clase, tiene un puntero especial al que podemos referenciar como $this. Si nuestra clase tiene un atributo llamado $atributo, podemos hacer referencia a este desde nuestra clase (métodos) de la siguiente forma $this->atributo Los métodos en PHP se declaran anteponiendo la palabra clave function y no devuelven algún tipo de datos específico.
  • 14.
    Modificadores de accesoPHP5 incorpora nuevos modificadores que permiten controlar la visibilidad de los atributos y métodos y que se añaden delante de las declaraciones. public private protected Por defecto, acceso desde dentro y fuera de la clase. Acceso solo desde dentro de la clase. No se heredan, accedidos por los getters y setters Acceso solo desde dentro de la clase y si Permite herencia en las subclases.
  • 15.
    Modificadores de acceso¿Cuál es el resultado?
  • 16.
    Constructor: métodos dentrode la clase que son llamados automáticamente cuando se crea una instancia de dicha clase. Sintaxis Constructores class claseX { public function __construct(){...} //Const. por default public function __construct( $param ){...} }
  • 17.
    Ejercicio: Probar laimplementación de la siguiente clase Constructores ¿Cuál es el resultado? Probar esta clase
  • 18.
    Sobrecarga de métodosSobrecarga : varios métodos con el mismo nombre pero diferente “firma”. ¿Algún ejemplo? public function HacerDeposito( $importe) { } public function HacerDeposito( $importe, $acreditar) { }
  • 19.
    Herencia y PolimorfismoHerencia Declaración de clases y derivación class subclase extends superclase { //Cuerpo de la clase }
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
    SMDB MySQL operacionesbásicas En este apartado comprenderemos como realizar operaciones básicas con MySQL como es insertar, actualizar, leer y eliminar registros de una tabla. SQL de la bd: sistema CREATE TABLE `usuario` (`idUsuario` TINYINT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY , `nombre` VARCHAR( 15 ) NOT NULL , `clave` VARCHAR( 15 ) NOT NULL );
  • 25.
    SMDB MySQL operacionesbásicas Funciones de MySQL
  • 26.
    Conexión entre PHPy MySQL Operación consultar
  • 27.
    Conexión entre PHPy MySQL Operación insertar, actualizar y eliminar se hará en clases y con el uso de la POO para simplificar el trabajo repetitivo. Para administrar la bd mysql propondremos la utilización de dos herramientas, Navicat y PhpMyAdmin
  • 28.
    ¿Que se veráen la sesión3? Veremos como crear dos clases de persistencia de base de datos, que nos ayudarán a reutilizar nuestro código en las conexiones con la base de datos MySQL a las que llamaremos DBManager y RecordSet. Desarrollo de una aplicación web con las operaciones báscias CRUD (Create, Retrieve, Update y Delete) a la que llamaremos wbmusic.
  • 29.

Notas del editor

  • #2 © 2003 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary. MGB 2003