SlideShare ist ein Scribd-Unternehmen logo
1 von 58
Downloaden Sie, um offline zu lesen
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

Weitere ähnliche Inhalte

Was ist angesagt? (20)

Stored procedure
Stored procedureStored procedure
Stored procedure
 
jQuery Ajax
jQuery AjaxjQuery Ajax
jQuery Ajax
 
MS Sql Server: Creating Views
MS Sql Server: Creating ViewsMS Sql Server: Creating Views
MS Sql Server: Creating Views
 
Java Collections
Java  Collections Java  Collections
Java Collections
 
Css
CssCss
Css
 
Basic IMS For Applications
Basic IMS For ApplicationsBasic IMS For Applications
Basic IMS For Applications
 
Introduction to database & sql
Introduction to database & sqlIntroduction to database & sql
Introduction to database & sql
 
Java collections
Java collectionsJava collections
Java collections
 
C# Inheritance
C# InheritanceC# Inheritance
C# Inheritance
 
ADO.NET
ADO.NETADO.NET
ADO.NET
 
Object oreinted php | OOPs
Object oreinted php | OOPsObject oreinted php | OOPs
Object oreinted php | OOPs
 
Constructors destructors
Constructors destructorsConstructors destructors
Constructors destructors
 
What is SQL Server?
What is SQL Server?What is SQL Server?
What is SQL Server?
 
Sql DML Lenguaje de manipulación de datos
Sql DML Lenguaje de manipulación de datos Sql DML Lenguaje de manipulación de datos
Sql DML Lenguaje de manipulación de datos
 
Oops concepts in php
Oops concepts in phpOops concepts in php
Oops concepts in php
 
Java Serialization
Java SerializationJava Serialization
Java Serialization
 
HTML5 & CSS3
HTML5 & CSS3 HTML5 & CSS3
HTML5 & CSS3
 
Consultas base de datos en SQL
Consultas base de datos en SQLConsultas base de datos en SQL
Consultas base de datos en SQL
 
jQuery
jQueryjQuery
jQuery
 
(Fast) Introduction to HTML & CSS
(Fast) Introduction to HTML & CSS (Fast) Introduction to HTML & CSS
(Fast) Introduction to HTML & CSS
 

Ähnlich wie Php orientado a objetos, Ronald Nina

Unidad III epoo
Unidad III epooUnidad III epoo
Unidad III epoolhgarzonr
 
Programación estructurada
Programación estructuradaProgramación estructurada
Programación estructuradavnslgars
 
[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 javaEudris Cabrera
 
Php orientado a_objetos
Php orientado a_objetosPhp orientado a_objetos
Php orientado a_objetosJose 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 .pptxRICARDOEDGARDOQUINTA
 
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 Marielena Lujano
 
Intro Programación Orientada a Objetos
Intro Programación Orientada a ObjetosIntro Programación Orientada a Objetos
Intro Programación Orientada a ObjetosPablo Sepulveda P.
 
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 JavaEmilio Aviles Avila
 
Sesion2 Php Oo Y Mysql
Sesion2 Php Oo Y MysqlSesion2 Php Oo Y Mysql
Sesion2 Php Oo Y MysqlHugo Flores
 
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 2015Renny Batista
 
java (clases,herencias,encapsulamiento,.. )
java (clases,herencias,encapsulamiento,.. )java (clases,herencias,encapsulamiento,.. )
java (clases,herencias,encapsulamiento,.. )brayan0015
 

Ähnlich wie 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,.. )
 

Kürzlich hochgeladen

Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21mariacbr99
 
investigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIinvestigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIhmpuellon
 
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...JohnRamos830530
 
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.pptxAlan779941
 
Guia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos BasicosGuia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos BasicosJhonJairoRodriguezCe
 
Buenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxBuenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxFederico Castellari
 
redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativanicho110
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxJorgeParada26
 
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 eyvanamcerpam
 
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 estossgonzalezp1
 
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.FlorenciaCattelani
 

Kürzlich hochgeladen (11)

Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 
investigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIinvestigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXI
 
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
 
Guia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos BasicosGuia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos Basicos
 
Buenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxBuenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptx
 
redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativa
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
 
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
 
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
 
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.
 

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.