guía de poo en php

23
Guía de POO en PHP Presentado Por: Marco Antonio Chavelas Jardon. José Francisco Martínez Hernández

Upload: marck-chavelas

Post on 05-Mar-2016

281 views

Category:

Documents


13 download

DESCRIPTION

Guia sobre la programacion basica sobre php orientada a poo.

TRANSCRIPT

Page 1: Guía de poo en php

Guía de POO en PHPPresentado Por: Marco Antonio Chavelas Jardon.José Francisco Martínez Hernández

Page 2: Guía de poo en php

Elementos que conforman una Clase (Atributos, Métodos) Atributos Los atributos son las características individuales que diferencian un

objeto de otro y determinan su apariencia, estado u otras cualidades. Los atributos se guardan en variables denominadas de instancia, y cada objeto particular puede tener valores distintos para estas variables.

Métodos conjunto de instrucciones a las que se les asocia un nombre de modo

que si se desea ejecutarlas, sólo basta o referenciarlas a través de dicho nombre en vez de tener que escribirlas.

Page 3: Guía de poo en php

Ejemplo.

Page 4: Guía de poo en php

Referencia THIS

La variable $this: Dentro de un método, la variable $this hace referencia al objeto sobre el

que invocamos el método. En la invocación $micaja->introduce("algo") se está llamando al método introduce sobre el objeto $micaja. Cuando se está ejecutando ese método, se vuelca el valor que recibe por parámetro en el atributo contenido. En ese caso $this->contenido hace referencia al atributo contenido del objeto $micaja, que es sobre el que se invocaba el método.

Page 5: Guía de poo en php

Ejemplo:

Page 6: Guía de poo en php

Diferentes formas para el paso de argumentos a un método Paso por valor: El paso de parámetros por valor consiste en copiar el

contenido de la variable que queremos pasar en otra dentro del ámbito local de la subrutina, consiste pues en copiar el contenido de la memoria del argumento que se quiere pasar a otra dirección de memoria, correspondiente al argumento dentro del ámbito de dicha subrutina.

Paso por referencia: El paso de parámetros por referencia consiste en proporcionar a la subrutina a la que se le quiere pasar el argumento la dirección de memoria del dato.

Paso por valor resultado: Se basa en que dentro de la función se trabaja como si los argumentos hubieran sido pasados por valor pero al acabar la función los valores que tengan los argumentos serán copiados a las variables que pertenecían.

Page 7: Guía de poo en php

Ejemplo por valor:

Page 8: Guía de poo en php

Método.

un método es una subrutina cuyo código es definido en una clase y puede pertenecer tanto a una clase, como es el caso de los métodos de clase o estáticos, como a un objeto, como es el caso de los métodos de instancia.

Page 9: Guía de poo en php

Ejemplo:

Page 10: Guía de poo en php

Constructor

Los constructores se encargan de resumir las acciones de inicialización de los objetos. Cuando se instancia un objeto, se tienen que realizar varios pasos en su inicialización, por ejemplo dar valores a sus atributos y eso es de lo que se encarga el constructor. Los constructores pueden recibir unos datos para inicializar los objetos como se desee en cada caso. 

Page 11: Guía de poo en php

Ejemplo:

Page 12: Guía de poo en php

Herencia:

La programación orientada a objetos tiene un mecanismo llamado herencia por el que se pueden definir clases a partir de otras clases. Las clases realizadas a partir de otra clase o mejor dicho, que extienden a otra clase, se llaman clases extendidas o clases derivadas.

Las clases extendidas heredan todos los atributos y métodos de la clase base. Además, pueden tener tantos atributos y métodos nuevos como se desee.

Para ampliar el ejemplo que venimos desarrollando, la clase Caja, vamos a crear una clase extendida llamada Caja_tematica. Esta clase hereda de caja, pero además tiene un "tema", que es la descripción del tipo de cosas que metemos en la caja. Con esto podemos tener varias cajas, cada una con cosas de un tema concreto.

Page 13: Guía de poo en php

Ejemplo:

Page 14: Guía de poo en php

Public

Modificador public 

Es el nivel de acceso más permisivo. Sirve para indicar que el método o atributo de la clase es público. En este caso se puede acceder a ese atributo, para visualizarlo o editarlo, por cualquier otro elemento de nuestro programa. Es el modificador que se aplica si no se indica otra cosa. 

Page 15: Guía de poo en php

Ejemplo:

Page 16: Guía de poo en php

Private

Modificador private 

Es el nivel de acceso más restrictivo. Sirve para indicar que esa variable sólo se va a poder acceder desde el propio objeto, nunca desde fuera. Si intentamos acceder a un método o atributo declarado private desde fuera del propio objeto, obtendremos un mensaje de error indicando que no es posible a ese elemento. 

Page 17: Guía de poo en php

Ejemplo:

Page 18: Guía de poo en php

Protected

Modificador protected 

Este indica un nivel de acceso medio y un poco más especial que los anteriores. Sirve para que el método o atributo sea público dentro del código de la propia clase y de cualquier clase que herede de aquella donde está el método o propiedad protected. Es privado y no accesible desde cualquier otra parte. Es decir, un elemento protected es público dentro de la propia clase y en sus heredadas.

Page 19: Guía de poo en php

Ejemplo:

Page 20: Guía de poo en php

Clase Abstracta

Las clases abstractas son similares a las clases normales en su construccion y concepto aunque se diferencian de estas en 2 aspectos fundamentales :

Una clase abstracta no puede ser instanciada, no podremos crear objetos a partir de ellas. Una clase abstracta puede incorporar metodos abstractos. Los metodos abstractos son

aquellos que solo existe su declaracion, dejando su implementacion a las futuras clases extendidas o derivadas.

Importante:

Todos los metodos declarados como abstractos, deberan pertenecer necesariamente a una clase abstracta. Es decir que una clase normal no podremos definir un metodo como abstracto.

Una clase abstracta tiene la misma estructura que una clase normal, solo es necesario añadir la palabra clave abstract al inicio de su declaracion. Nada mejor que un sencillo ejemplo para comprobarlo :

Page 21: Guía de poo en php

Ejemplo

Page 22: Guía de poo en php

Interfaz

Las interfaz es el recurso ideal para la implementación del polimorfismo, ya que las interfaz es un conjunto de declaraciones de funciones o métodos sin incluir su codificación, dejando a la clase que implementa la interfaz esta tarea.

Page 23: Guía de poo en php

Ejemplo