SlideShare une entreprise Scribd logo
1  sur  58
Télécharger pour lire hors ligne
PHP orientado
a objetos

Ronald Nina Layme

Capacitador
 La

cosa mas difícil para aprender (y

enseñar dicho sea de paso) en PHP
orientado a objetos es... lo básico. Pero

una vez que obtengas el conocimiento,
el resto vendrá mucho, mucho mas fácil.
 La

Programación Orientada a Objetos

(POO) es un tipo de programación
agregada a PHP 5 que hace de la

construcción compleja, modular y
reusable de aplicaciones web mucho
mas fácil
 Con

el lanzamiento de PHP 5, los

programadores en PHP finalmente tienen
el poder de programar.
 Finalmente

tiene una completa

infraestructura POO
 La

diferencia entre construir una aplicación

al estilo antiguo (por procedimiento) versus
la manera POO.
 Cuales

son los principios básicos de la POO y

como se usan en PHP.
 Cuando

debes usar POO en tus scripts PHP.


Una clase es un conjunto de variables,
llamados atributos, y funciones, llamadas
métodos, que trabajan sobre esas variables.
Las clases son, al fin y al cabo, una definición:

una especificación de propiedades y
funcionalidades de elementos que van a
participar en nuestros programas.
 La

programación orientada a objetos se

basa en la programación de clases; a
diferencia de la programación

estructurada, que está centrada en las
funciones.
 Una

clase es un molde del que luego se

pueden crear múltiples objetos, con
similares características.
 Un

poco más abajo se define una clase

Persona y luego se crean dos objetos de
dicha clase.
 Una

clase es una plantilla (molde), que

define atributos (lo que conocemos
como variables) y métodos (lo que

conocemos como funciones).
 La

clase define los atributos y métodos

comunes a los objetos de ese tipo, pero
luego, cada objeto tendrá sus propios

valores y compartirán las mismas
funciones.
 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.
 La

es:

sintaxis básica para declarar una clase
 Los

atributos normalmente son privados

(private)
 Esto

es una de las ventajas

fundamentales de la Programación
Orientada a Objetos (POO), es decir

reutilización de código (gracias a que
está encapsulada en clases) es muy
sencilla.


Los atributos son las características, cualidades,
propiedades distintivas de cada clase.



eterminan la apariencia, estado y demás
particularidades de la clase.



Varios objetos de una misma clase tendrán los
mismos atributos pero con valores diferentes.
 Cuando

creamos un objeto de una clase

determinada, los atributos declarados por
la clase son localizadas en memoria y

pueden ser modificados mediante los
métodos.
 Lo

más conveniente es que los atributos

sean privados para que solo los métodos
de la clase puedan modificarlos.


Implementar una clase que muestre una lista de

hipervínculos en forma horizontal (básicamente
un menú de opciones)


Podemos definir dos vectores paralelos que

almacenen las direcciones y los títulos
respectivamente.


Definiremos dos métodos: cargarOpcion y

mostrar.
 Los

métodos son como las funciones en

los lenguajes estructurados, pero están
definidos dentro de una clase y operan

sobre los atributos de dicha clase.
 El

objetivo de un método es ejecutar las

actividades que tiene encomendada la
clase a la cual pertenece.
 Los

atributos de un objeto se modifican

mediante llamadas a sus métodos.
 El

constructor es un método especial de

una clase. El objetivo fundamental del
constructor es inicializar los atributos del

objeto que creamos.
 Básicamente

el constructor remplaza al

método inicializar que habíamos hecho
en el concepto anterior.


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.



El constructor es un método opcional, de todos
modos es muy común definirlo.
 Un

método privado (private) solo puede

ser llamado desde otro método de la
clase. No podemos llamar a un método

privados desde donde definimos un
objeto.
 La

herencia significa que se pueden

crear nuevas clases partiendo de clases
existentes, que tendrá todas los atributos

y los métodos de su 'superclase' o 'clase
padre' y además se le podrán añadir
otros atributos y métodos propios.
 Clase

de la que desciende o deriva una

clase. Las clases hijas (descendientes)
heredan (incorporan) automáticamente

los atributos y métodos de la la clase
padre.
 Clase

desciendiente de otra. Hereda

automáticamente los atributos y métodos
de su superclase. Es una especialización

de otra clase. Admiten la definición de
nuevos atributos y métodos para
aumentar la especialización de la clase.
 Imaginemos

la clase Vehículo. Qué clases

podrían derivar de ella?


Habíamos dicho que otro objetivo de la POO
es el encapsulamiento (es decir ocultar todo
aquello que no le interese a otros objetos),
para lograr esto debemos definir los atributos
y métodos como privados. El inconveniente
es cuando debemos utilizar herencia.


Una subclase no puede acceder a los
atributos y métodos privados de la clase
padre. Para poder accederlos deberíamos
definirlos como públicos (pero esto trae como
contrapartida que perdemos el
encapsulamiento de la clase)
 Aquí

es donde entra en juego el

modificador protected. Un atributo o
método protected puede ser accedido

por la clase, por todas sus subclases pero
no por los objetos que difinimos de dichas
clases.
 Lo

más conveniente es sobreescribir

métodos para completar el algoritmo del
método de la clase padre. No es bueno

sobreescribir un método y cambiar
completamente su comportamiento.


El objetivo principal es liberar recursos que solicitó

el objeto (conexión a la base de datos, creación
de imágenes dinámicas etc.)


Es el último método que se ejecuta de la clase.



Se ejecuta en forma automática, es decir no
tenemos que llamarlo.



Debe llamarse __destruct.



No retorna datos.
Php orientado a objetos, Ronald Nina

Contenu connexe

Tendances

Orientação a Objetos no Delphi - Controle de Estoque (II)
Orientação a Objetos no Delphi - Controle de Estoque (II)Orientação a Objetos no Delphi - Controle de Estoque (II)
Orientação a Objetos no Delphi - Controle de Estoque (II)
Ryan Padilha
 
Apresentação programação orientada à objetos
Apresentação   programação orientada à objetosApresentação   programação orientada à objetos
Apresentação programação orientada à objetos
soncino
 
Basics of Solr and Solr Integration with AEM6
Basics of Solr and Solr Integration with AEM6Basics of Solr and Solr Integration with AEM6
Basics of Solr and Solr Integration with AEM6
DEEPAK KHETAWAT
 

Tendances (20)

DER - Diagrama de Entidade e Relacionamentos
DER - Diagrama de Entidade e RelacionamentosDER - Diagrama de Entidade e Relacionamentos
DER - Diagrama de Entidade e Relacionamentos
 
Construtores em Java
Construtores em JavaConstrutores em Java
Construtores em Java
 
Corso ABAP OO 04
Corso ABAP OO  04Corso ABAP OO  04
Corso ABAP OO 04
 
Orientação a Objetos no Delphi - Controle de Estoque (II)
Orientação a Objetos no Delphi - Controle de Estoque (II)Orientação a Objetos no Delphi - Controle de Estoque (II)
Orientação a Objetos no Delphi - Controle de Estoque (II)
 
Python oop third class
Python oop   third classPython oop   third class
Python oop third class
 
This pointer
This pointerThis pointer
This pointer
 
What Is Virtual DOM In React JS.pptx
What Is Virtual DOM In React JS.pptxWhat Is Virtual DOM In React JS.pptx
What Is Virtual DOM In React JS.pptx
 
Object oriented programming interview questions
Object oriented programming interview questionsObject oriented programming interview questions
Object oriented programming interview questions
 
Apresentação programação orientada à objetos
Apresentação   programação orientada à objetosApresentação   programação orientada à objetos
Apresentação programação orientada à objetos
 
Introduction to ASP.NET Core
Introduction to ASP.NET CoreIntroduction to ASP.NET Core
Introduction to ASP.NET Core
 
07 Modelagem de banco de dados: Modelo Físico
07 Modelagem de banco de dados: Modelo Físico07 Modelagem de banco de dados: Modelo Físico
07 Modelagem de banco de dados: Modelo Físico
 
jQuery PPT
jQuery PPTjQuery PPT
jQuery PPT
 
Modelagem de Dados
Modelagem de DadosModelagem de Dados
Modelagem de Dados
 
Basics of Solr and Solr Integration with AEM6
Basics of Solr and Solr Integration with AEM6Basics of Solr and Solr Integration with AEM6
Basics of Solr and Solr Integration with AEM6
 
NextJS - Online Summit for Frontend Developers September 2020
NextJS - Online Summit for Frontend Developers September 2020NextJS - Online Summit for Frontend Developers September 2020
NextJS - Online Summit for Frontend Developers September 2020
 
Redux essentials
Redux essentialsRedux essentials
Redux essentials
 
REST Easy with Django-Rest-Framework
REST Easy with Django-Rest-FrameworkREST Easy with Django-Rest-Framework
REST Easy with Django-Rest-Framework
 
Encapsulamento em Orientação a Objetos
Encapsulamento em Orientação a ObjetosEncapsulamento em Orientação a Objetos
Encapsulamento em Orientação a Objetos
 
OOPS Basics With Example
OOPS Basics With ExampleOOPS Basics With Example
OOPS Basics With Example
 
The virtual DOM and how react uses it internally
The virtual DOM and how react uses it internallyThe virtual DOM and how react uses it internally
The virtual DOM and how react uses it internally
 

Similaire à Php orientado a objetos, Ronald Nina

Programación estructurada
Programación estructuradaProgramación estructurada
Programación estructurada
vnslgars
 
Php orientado a_objetos
Php orientado a_objetosPhp orientado a_objetos
Php orientado a_objetos
Jose Ney Quil
 
programacion orientada a objetos con PHP .pptx
programacion orientada a objetos con PHP .pptxprogramacion orientada a objetos con PHP .pptx
programacion orientada a objetos con PHP .pptx
RICARDOEDGARDOQUINTA
 
Intro Programación Orientada a Objetos
Intro Programación Orientada a ObjetosIntro Programación Orientada a Objetos
Intro Programación Orientada a Objetos
Pablo Sepulveda P.
 
Sesion2 Php Oo Y Mysql
Sesion2 Php Oo Y MysqlSesion2 Php Oo Y Mysql
Sesion2 Php Oo Y Mysql
Hugo Flores
 

Similaire à Php orientado a objetos, Ronald Nina (20)

Unidad III epoo
Unidad III epooUnidad III epoo
Unidad III epoo
 
Qué es la poo
Qué es la pooQué es la poo
Qué es la poo
 
Programación estructurada
Programación estructuradaProgramación estructurada
Programación estructurada
 
Guia poo php
Guia poo phpGuia poo php
Guia poo php
 
[ES] Programación orientada a objeto con java
[ES] Programación orientada a objeto con java[ES] Programación orientada a objeto con java
[ES] Programación orientada a objeto con java
 
Php orientado a_objetos
Php orientado a_objetosPhp orientado a_objetos
Php orientado a_objetos
 
programacion orientada a objetos con PHP .pptx
programacion orientada a objetos con PHP .pptxprogramacion orientada a objetos con PHP .pptx
programacion orientada a objetos con PHP .pptx
 
Lenguaje de Programación Orientada a Objetos
Lenguaje  de  Programación  Orientada  a Objetos Lenguaje  de  Programación  Orientada  a Objetos
Lenguaje de Programación Orientada a Objetos
 
Intro Programación Orientada a Objetos
Intro Programación Orientada a ObjetosIntro Programación Orientada a Objetos
Intro Programación Orientada a Objetos
 
Programacion
ProgramacionProgramacion
Programacion
 
Curso Java Inicial 4 Poo En Java
Curso Java Inicial   4 Poo En JavaCurso Java Inicial   4 Poo En Java
Curso Java Inicial 4 Poo En Java
 
Sesion2 Php Oo Y Mysql
Sesion2 Php Oo Y MysqlSesion2 Php Oo Y Mysql
Sesion2 Php Oo Y Mysql
 
Programacion orientada a_objetos
Programacion orientada a_objetosProgramacion orientada a_objetos
Programacion orientada a_objetos
 
Informacion
InformacionInformacion
Informacion
 
Java
Java Java
Java
 
Programación Orientada a Objetos en Java - Parte I 2015
Programación Orientada a Objetos en Java - Parte I 2015Programación Orientada a Objetos en Java - Parte I 2015
Programación Orientada a Objetos en Java - Parte I 2015
 
Historia de java (1)
Historia de java (1)Historia de java (1)
Historia de java (1)
 
Historia de java (1)
Historia de java (1)Historia de java (1)
Historia de java (1)
 
Guía Herencia PO_O
Guía Herencia PO_OGuía Herencia PO_O
Guía Herencia PO_O
 
java (clases,herencias,encapsulamiento,.. )
java (clases,herencias,encapsulamiento,.. )java (clases,herencias,encapsulamiento,.. )
java (clases,herencias,encapsulamiento,.. )
 

Dernier

Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
AnnimoUno1
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
FagnerLisboa3
 

Dernier (11)

Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 

Php orientado a objetos, Ronald Nina

  • 1. PHP orientado a objetos Ronald Nina Layme Capacitador
  • 2.  La cosa mas difícil para aprender (y enseñar dicho sea de paso) en PHP orientado a objetos es... lo básico. Pero una vez que obtengas el conocimiento, el resto vendrá mucho, mucho mas fácil.
  • 3.  La Programación Orientada a Objetos (POO) es un tipo de programación agregada a PHP 5 que hace de la construcción compleja, modular y reusable de aplicaciones web mucho mas fácil
  • 4.  Con el lanzamiento de PHP 5, los programadores en PHP finalmente tienen el poder de programar.  Finalmente tiene una completa infraestructura POO
  • 5.  La diferencia entre construir una aplicación al estilo antiguo (por procedimiento) versus la manera POO.  Cuales son los principios básicos de la POO y como se usan en PHP.  Cuando debes usar POO en tus scripts PHP.
  • 6.  Una clase es un conjunto de variables, llamados atributos, y funciones, llamadas métodos, que trabajan sobre esas variables. Las clases son, al fin y al cabo, una definición: una especificación de propiedades y funcionalidades de elementos que van a participar en nuestros programas.
  • 7.  La programación orientada a objetos se basa en la programación de clases; a diferencia de la programación estructurada, que está centrada en las funciones.
  • 8.  Una clase es un molde del que luego se pueden crear múltiples objetos, con similares características.  Un poco más abajo se define una clase Persona y luego se crean dos objetos de dicha clase.
  • 9.  Una clase es una plantilla (molde), que define atributos (lo que conocemos como variables) y métodos (lo que conocemos como funciones).
  • 10.  La clase define los atributos y métodos comunes a los objetos de ese tipo, pero luego, cada objeto tendrá sus propios valores y compartirán las mismas funciones.
  • 11.  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.
  • 12.  La es: sintaxis básica para declarar una clase
  • 13.
  • 14.  Los atributos normalmente son privados (private)
  • 15.
  • 16.  Esto es una de las ventajas fundamentales de la Programación Orientada a Objetos (POO), es decir reutilización de código (gracias a que está encapsulada en clases) es muy sencilla.
  • 17.
  • 18.  Los atributos son las características, cualidades, propiedades distintivas de cada clase.  eterminan la apariencia, estado y demás particularidades de la clase.  Varios objetos de una misma clase tendrán los mismos atributos pero con valores diferentes.
  • 19.  Cuando creamos un objeto de una clase determinada, los atributos declarados por la clase son localizadas en memoria y pueden ser modificados mediante los métodos.
  • 20.  Lo más conveniente es que los atributos sean privados para que solo los métodos de la clase puedan modificarlos.
  • 21.  Implementar una clase que muestre una lista de hipervínculos en forma horizontal (básicamente un menú de opciones)  Podemos definir dos vectores paralelos que almacenen las direcciones y los títulos respectivamente.  Definiremos dos métodos: cargarOpcion y mostrar.
  • 22.
  • 23.
  • 24.  Los métodos son como las funciones en los lenguajes estructurados, pero están definidos dentro de una clase y operan sobre los atributos de dicha clase.
  • 25.  El objetivo de un método es ejecutar las actividades que tiene encomendada la clase a la cual pertenece.  Los atributos de un objeto se modifican mediante llamadas a sus métodos.
  • 26.
  • 27.
  • 28.  El constructor es un método especial de una clase. El objetivo fundamental del constructor es inicializar los atributos del objeto que creamos.
  • 29.  Básicamente el constructor remplaza al método inicializar que habíamos hecho en el concepto anterior.
  • 30.  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.  El constructor es un método opcional, de todos modos es muy común definirlo.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.  Un método privado (private) solo puede ser llamado desde otro método de la clase. No podemos llamar a un método privados desde donde definimos un objeto.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43.
  • 44.
  • 45.  La herencia significa que se pueden crear nuevas clases partiendo de clases existentes, que tendrá todas los atributos y los métodos de su 'superclase' o 'clase padre' y además se le podrán añadir otros atributos y métodos propios.
  • 46.  Clase de la que desciende o deriva una clase. Las clases hijas (descendientes) heredan (incorporan) automáticamente los atributos y métodos de la la clase padre.
  • 47.  Clase desciendiente de otra. Hereda automáticamente los atributos y métodos de su superclase. Es una especialización de otra clase. Admiten la definición de nuevos atributos y métodos para aumentar la especialización de la clase.
  • 48.  Imaginemos la clase Vehículo. Qué clases podrían derivar de ella?
  • 49.
  • 50.
  • 51.
  • 52.
  • 53.  Habíamos dicho que otro objetivo de la POO es el encapsulamiento (es decir ocultar todo aquello que no le interese a otros objetos), para lograr esto debemos definir los atributos y métodos como privados. El inconveniente es cuando debemos utilizar herencia.
  • 54.  Una subclase no puede acceder a los atributos y métodos privados de la clase padre. Para poder accederlos deberíamos definirlos como públicos (pero esto trae como contrapartida que perdemos el encapsulamiento de la clase)
  • 55.  Aquí es donde entra en juego el modificador protected. Un atributo o método protected puede ser accedido por la clase, por todas sus subclases pero no por los objetos que difinimos de dichas clases.
  • 56.  Lo más conveniente es sobreescribir métodos para completar el algoritmo del método de la clase padre. No es bueno sobreescribir un método y cambiar completamente su comportamiento.
  • 57.  El objetivo principal es liberar recursos que solicitó el objeto (conexión a la base de datos, creación de imágenes dinámicas etc.)  Es el último método que se ejecuta de la clase.  Se ejecuta en forma automática, es decir no tenemos que llamarlo.  Debe llamarse __destruct.  No retorna datos.