Sunteți pe pagina 1din 14

PROGRAMACION ORIENTADA A OBJETOS EN PHP 5

PROGRAMACION ORIENTADA A OBJETOS PHP 5

Concepto
La Programacin Orientada a Objetos es un paradigma de programacin que usa los objetos en sus interacciones, para disear aplicaciones y programas informticos.

PROGRAMACION ORIENTADA A OBJETOS PHP 5

P.O.O. en PHP 5
La Programacin Orientada a Objetos en PHP desde la versin 5.0 ofrece las ventajas de utilizar completamente el paradigma de programacin donde utiliza como objetos y clases, donde este paradigma intenta representar las partes de una aplicacin y/o la aplicacin completa de una forma ms humana.
PROGRAMACION ORIENTADA A OBJETOS PHP 5 3

Conceptos fundamentales
1. Clase.

2. Objetos.
3. Herencia.

4. Polimorfismo.

PROGRAMACION ORIENTADA A OBJETOS PHP 5

1. Clase:
Es un tipo de dato definido por el programador que determina las estructuras de datos que lo forman y las funciones asociadas con l, es decir es un modelo con el que se construyen los objetos.

PROGRAMACION ORIENTADA A OBJETOS PHP 5

Ejemplo 1: Definicin simple de una Clase


< ?php class SimpleClass { // member declaration public $var = 'a default value'; // method declaration public function displayVar ( ) { echo $this -> var; } } ?>
PROGRAMACION ORIENTADA A OBJETOS PHP 5

Ejemplo 2: Valores por defecto de los miembros de una clase


< ?php class SimpleClass { // invalid member declarations: public $var1 = Hola . Mundo'; public $var2 = <<<EOD Hola Mundo EOD; public $var3 = 1+2; public $var4 = self :: myStaticMethod ( ); public $var5 = $myVar;
// valid member declarations: public $var6 = myConstant; public $var7 = self :: classConstant; public $var8 = array (true, false); } ?>
PROGRAMACION ORIENTADA A OBJETOS PHP 5 7

2. Objeto:
Se refiere comnmente a atributos (elementos) y comportamientos (mtodos) encapsulados en una entidad. Son un mtodo natural para implementar estructuras de datos abstractos, trayendo fsicamente componentes de datos con procedimientos para luego manipularlos

PROGRAMACION ORIENTADA A OBJETOS PHP 5

Ejemplo 1: Creacin y Asignacin una variable.


< ? php $clase = new nombre_clase ( ); $clase-> metodo1(parametro); ? >

PROGRAMACION ORIENTADA A OBJETOS PHP 5

3. Herencia:
Es la capacidad formar nuevas Clases usando clases previamente definidas. Las nuevas clases, conocida como Clases Derivadas, toman (o heredan) los atributos y los mtodos preexistentes de la clase madre.

PROGRAMACION ORIENTADA A OBJETOS PHP 5

10

Ejemplo 1: Herencia de Clase


< ? php class nombre_clase1 extends nombre_clase { public function __construct ($parametro) { instrucciones_metodo1; } } ? >

PROGRAMACION ORIENTADA A OBJETOS PHP 5

11

4. Polimorfismo:
Es la habilidad de un tipo A que aparece y es usado como otro tipo B. Significa que un tipo A de alguna manera deriva de un tipo B o que un tipo A implementa una interface que representa un tipo B.

PROGRAMACION ORIENTADA A OBJETOS PHP 5

12

Ejemplo:
< ?php /* Empezaremos definiendo la jerarqua de clases */ class classPoligono { function calculo ( ) { echo 'El area depende del tipo de poligono'; } } class classCuadrado extends classPoligono { function calculo ( ) class classRectangulo extends classPoligono { function calculo ( ) { echo 'area de un rectangulo : a=b*h<br>'; } } class classTriangulo extends classPoligono { function calculo ( ) { echo 'area de un triangulo : a=(b*h)/2<br>'; } } /* fin definicin de la jerarqua de clases */

{ echo 'area de un cuadrado : a=l*l<br>'; } }

PROGRAMACION ORIENTADA A OBJETOS PHP 5

13

/* definicin de la funcin encargada de realizar las llamada polimrfica al mtodo "calculo A destacar que en la definicin de la funcin definimos el tipo parmetro que pasamos por referencia, esto no es obligatorio en PHP, pero nos ayuda a entender el concepto y as poder aplicarlo en otros lenguajes mas estrictos. */ function area(classPoligono $obj) { $obj -> calculo ( ); }

/* Creamos los objetos necesarios */ $cuadrado = new Cuadrado; $rectangulo = new Rectangulo; $triangulo = new Triangulo; /* Ejecutamos la funcion encargada de realizar la llamada polimorfica */ Area ($cuadrado); Area ($rectangulo); Area ($triangulo); ?>

POO_ConceptosHistoria Ana Lilia Laureano/UAM-A

14

S-ar putea să vă placă și