SlideShare a Scribd company logo
1 of 136
Orientação a Objetos em PHP




                 augusto@phpsp.org.br

                      @augustohp
AUGUSTO PASCUTTI


•4   anos de experiência

• ZCE

• Fundador/coordenador     PHPSP

• Habari, CakePHP
OBJETIVOS
ORIENTAR
PHP 5
USAR
ORIENTANDO-SE
PROGRAMA PROCEDURAL ?
ESQUEÇA !
PENSE DIFERENTE
PENSE OO
CLASSES
BASE DA OO
MOLDES
INSTRUÇÕES
SEM VONTADE PRÓPRIA
CLASSES
CLASSES
CLASSES
CLASSES
• Uma classe por arquivo

• Padrões de nomenclatura

   • Padrão_Zend_ou_Pear
                            CLASSES
   • PadrãoCamelCase

   • PaDrÃoMiGuXo
OBJETOS
FILHOS DAS CLASSES
INFORMAÇÕES
INDEPENDENTES
EXECUTORES
EXECUTAM
ATRIBUTOS
DECLARADOS NA CLASSE
USADOS NOS OBJETOS
PROPRIEDADES
INFORMAÇÕES
VARIÁVEIS
4
VARIÁVEIS
5
VARIÁVEIS
MÉTODOS
DECLARADOS NA CLASSE
USADOS PELOS OBJETOS
FUNÇÕES
FAZEM COISAS
DÃO E RECEBEM
4
DÃO E RECEBEM
5
DÃO E RECEBEM
AUTOLOAD
AUTOLOAD
•Executado na instanciação
•Executado somente para classes não declaradas
•Nativo do PHP
•Duas implementações
   •__autoload
   •SPL
•Sem includes/requires
•Melhora consumo de memória
AUTOLOAD
AUTOLOAD
MEMBROS DA CLASSE
CONSTANTES
CONSTANTES
ESTÁTICOS
ESTÁTICOS
ESTÁTICOS
MENSAGENS
PODER DA OO
TROCA DE INFORMAÇÕES
TROCA DE INFORMAÇÕES
HERANÇA
CLASSE PAI
CLASSE FILHA
VISIBILIDADE
PUBLIC
PROTECTED
PRIVATE
POLIMORFISMO
ERA UMA COISA
AGORA É OUTRA
SOBRECARGA
NA VERDADE: SOBRESCRITA
NA VERDADE: SOBRESCRITA
FINAL
IMPEDE O POLIMORFISMO
USADO EM CLASSES ...
E MÉTODOS
E MÉTODOS
ABSTRATO
NÃO PODE SER INSTANCIADA
USADA COMO PAI
USADA COMO PAI
USADA COMO PAI
MÁGICA
MÉTODOS MÁGICOS
EXECUTADOS PELO PHP
14 EXISTENTES NO PHP 5.3
SEMPRE COMEÇAM COM “_ _”
CONSTRUINDO
__CONSTRUCT


•Executado na instanciação do objeto
•Não pode retornar nada
•Pode sofrer sobrecarga
•Pode receber argumentos
__CONSTRUCT
DESTRUINDO
•Executado quando objeto sai da memória
 •Final do script
 •unset() do objeto
•Pode ser útil em
 •Banco de dados
 •Logs
 •etc ...


                            __DESTRUCT
__DESTRUCT
MOSTRANDO
__TOSTRING
•Chamado quando objeto é usado como String
•O método DEVE retornar uma String
•Útil para objetos que devem retornar algo visual
 •Paginador, Botão
•Até a versão 5.2 funcionava só com `print` e `echo`
•> 5.2 funciona em qualquer contexto de string
 •TypeCast
 •sprintf()
__TOSTRING
OUTROS MÉTODOS MÁGICOS

  •__call
  •__get
  •__set
  •__get
  •__isset
  •__clone
  •http://php.net/manual/en/language.oop5.magic.php
INTERFACES
“CLASSES” GENÉRICAS
DEFINEM COMPORTAMENTOS
TIPOS DE DADOS
TIPOS DE DADOS
•Mais genéricos que Classes Abstratas

•Uma classe pode implementar várias Interfaces


       TIPOS DE DADOS
EXCEPTIONS
TRABALHANDO
OBJETOS E REFERÊNCIAS
OBJETOS E REFERÊNCIAS
OBJETOS E REFERÊNCIAS
OBJETOS E REFERÊNCIAS
TYPE HINT
•Forçam um tipo a um argumento
•Só podem ser usados como tipo:
 •Array
 •Classes




             TYPE HINT
TYPE HINT
TYPE HINT
INSTANCE OF
•Checa se um objeto é uma determinada instância
•Retorna boolean
•Um objeto pode ser checado contra
  •Classe
  •Classe Abstrata
  •Interface


         INSTANCE OF
INSTANCE OF
BANCO DE DADOS
ABSTRAIA
•Melhora segurança
•Centraliza execuções
•Melhor manutenção
•Evita dor de cabeças




          ABSTRAIA
NÃO REINVENTE A RODA
USE A PDO
•O que ela é:
  •Abstração de Acesso para banco de dados
  •Nativo do PHP 5.1
  •Aprenda uma sintaxe de conexão
  •Muito/Extremamente TESTADA pra caramba
  •Mais leve do que qualquer outra


            USE A PDO
•O que ela NÃO é:
 •Não abstrai suas queries
 •Não evita instalação de drivers dos bancos
 •Não vai resolver seus problemas
   •Nem de segurança
   •Nem de performance


         USE A PDO
USANDO A PDO
USANDO A PDO
•Agilizam a execução de queries repetidas
•Implementam um pouco de segurança
•Simplificam o uso de queries repetidas
•Simplificam Fetch de resultados




   PDO STATEMENTS
PDO STATEMENTS
PARÂMETROS
RETORNO ID INSERIDO
DESIGN PATTERNS
•Solução comum para problemas comuns
•Independem de linguagem
•Vocuabulário comum
•Primeiros DP: Gang of Four




  DESIGN PATTERNS
•Singleton
•Factory
•Strategy
•Data Access Object
•Value Objects
•MVC


  DESIGN PATTERNS
FRAMEWORKS
Augusto Pascutti
                  augusto@phpsp.org.br
                          @augustohp
http://www.slideshare.net/augustopascutti

               PERGUNTAS ?

More Related Content

What's hot

Conhecendo Ruby on Rails
Conhecendo Ruby on RailsConhecendo Ruby on Rails
Conhecendo Ruby on RailsSergio Henrique
 
Curso Básico de Java - Aula 2
Curso Básico de Java - Aula 2Curso Básico de Java - Aula 2
Curso Básico de Java - Aula 2PeslPinguim
 
Programação Orientada a Objetos - Conceitos básicos da linguagem JAVA
Programação Orientada a Objetos - Conceitos básicos da linguagem JAVAProgramação Orientada a Objetos - Conceitos básicos da linguagem JAVA
Programação Orientada a Objetos - Conceitos básicos da linguagem JAVACristiano Almeida
 
Curso Linguagem de Programação I - PHP Básico
Curso Linguagem de Programação I - PHP BásicoCurso Linguagem de Programação I - PHP Básico
Curso Linguagem de Programação I - PHP BásicoNorton Guimarães
 
PHP: Linguagem + Mysql + MVC + AJAX
PHP: Linguagem + Mysql + MVC + AJAX PHP: Linguagem + Mysql + MVC + AJAX
PHP: Linguagem + Mysql + MVC + AJAX Sérgio Souza Costa
 
Minicurso de Django - Desenvolvimento ágil web com Django e Python
Minicurso de Django - Desenvolvimento ágil web com Django e PythonMinicurso de Django - Desenvolvimento ágil web com Django e Python
Minicurso de Django - Desenvolvimento ágil web com Django e PythonGuilherme Garcia
 
Removendo o cheiro ruim do seu código - PHPSC Conf 2011
Removendo o cheiro ruim do seu código - PHPSC Conf 2011Removendo o cheiro ruim do seu código - PHPSC Conf 2011
Removendo o cheiro ruim do seu código - PHPSC Conf 2011Luís Cobucci
 
Comandos gerais do PHP
Comandos gerais do PHPComandos gerais do PHP
Comandos gerais do PHPPaulo Dayvson
 
TechEd Brasil 2011: DEV 303 - Atualizando suas habilidades de programação com...
TechEd Brasil 2011: DEV 303 - Atualizando suas habilidades de programação com...TechEd Brasil 2011: DEV 303 - Atualizando suas habilidades de programação com...
TechEd Brasil 2011: DEV 303 - Atualizando suas habilidades de programação com...Rogério Moraes de Carvalho
 
Serversidephp pptx2-120418140114-phpapp01
Serversidephp pptx2-120418140114-phpapp01Serversidephp pptx2-120418140114-phpapp01
Serversidephp pptx2-120418140114-phpapp01joaocarlobarros
 
TechEd Brasil 2011: WEB 302 - Presente e futuro da linguagem de programação J...
TechEd Brasil 2011: WEB 302 - Presente e futuro da linguagem de programação J...TechEd Brasil 2011: WEB 302 - Presente e futuro da linguagem de programação J...
TechEd Brasil 2011: WEB 302 - Presente e futuro da linguagem de programação J...Rogério Moraes de Carvalho
 
Apostila de Introdução a POO com C#
Apostila de Introdução a POO com C#Apostila de Introdução a POO com C#
Apostila de Introdução a POO com C#Andre Nascimento
 
Spring framework 2.5
Spring framework 2.5Spring framework 2.5
Spring framework 2.5Diego Pacheco
 

What's hot (20)

Frameworks PHP
Frameworks PHPFrameworks PHP
Frameworks PHP
 
Conhecendo Ruby on Rails
Conhecendo Ruby on RailsConhecendo Ruby on Rails
Conhecendo Ruby on Rails
 
Javascript OO
Javascript OOJavascript OO
Javascript OO
 
Curso Básico de Java - Aula 2
Curso Básico de Java - Aula 2Curso Básico de Java - Aula 2
Curso Básico de Java - Aula 2
 
Mini Curso de PHP
Mini Curso de PHPMini Curso de PHP
Mini Curso de PHP
 
Programação Orientada a Objetos - Conceitos básicos da linguagem JAVA
Programação Orientada a Objetos - Conceitos básicos da linguagem JAVAProgramação Orientada a Objetos - Conceitos básicos da linguagem JAVA
Programação Orientada a Objetos - Conceitos básicos da linguagem JAVA
 
Java primeiros-passos
Java primeiros-passosJava primeiros-passos
Java primeiros-passos
 
Curso Linguagem de Programação I - PHP Básico
Curso Linguagem de Programação I - PHP BásicoCurso Linguagem de Programação I - PHP Básico
Curso Linguagem de Programação I - PHP Básico
 
PHP: Linguagem + Mysql + MVC + AJAX
PHP: Linguagem + Mysql + MVC + AJAX PHP: Linguagem + Mysql + MVC + AJAX
PHP: Linguagem + Mysql + MVC + AJAX
 
Minicurso de Django - Desenvolvimento ágil web com Django e Python
Minicurso de Django - Desenvolvimento ágil web com Django e PythonMinicurso de Django - Desenvolvimento ágil web com Django e Python
Minicurso de Django - Desenvolvimento ágil web com Django e Python
 
Removendo o cheiro ruim do seu código - PHPSC Conf 2011
Removendo o cheiro ruim do seu código - PHPSC Conf 2011Removendo o cheiro ruim do seu código - PHPSC Conf 2011
Removendo o cheiro ruim do seu código - PHPSC Conf 2011
 
Introdução a php
Introdução a phpIntrodução a php
Introdução a php
 
Comandos gerais do PHP
Comandos gerais do PHPComandos gerais do PHP
Comandos gerais do PHP
 
TechEd Brasil 2011: DEV 303 - Atualizando suas habilidades de programação com...
TechEd Brasil 2011: DEV 303 - Atualizando suas habilidades de programação com...TechEd Brasil 2011: DEV 303 - Atualizando suas habilidades de programação com...
TechEd Brasil 2011: DEV 303 - Atualizando suas habilidades de programação com...
 
Serversidephp pptx2-120418140114-phpapp01
Serversidephp pptx2-120418140114-phpapp01Serversidephp pptx2-120418140114-phpapp01
Serversidephp pptx2-120418140114-phpapp01
 
TechEd Brasil 2011: WEB 302 - Presente e futuro da linguagem de programação J...
TechEd Brasil 2011: WEB 302 - Presente e futuro da linguagem de programação J...TechEd Brasil 2011: WEB 302 - Presente e futuro da linguagem de programação J...
TechEd Brasil 2011: WEB 302 - Presente e futuro da linguagem de programação J...
 
PHP - Introdução
PHP - IntroduçãoPHP - Introdução
PHP - Introdução
 
Apostila de Introdução a POO com C#
Apostila de Introdução a POO com C#Apostila de Introdução a POO com C#
Apostila de Introdução a POO com C#
 
Spring framework 2.5
Spring framework 2.5Spring framework 2.5
Spring framework 2.5
 
Java - Primeiros passos
Java - Primeiros passosJava - Primeiros passos
Java - Primeiros passos
 

Viewers also liked

CURSO DE PHP PARA INICIANTES - AULA 1
CURSO DE PHP PARA INICIANTES - AULA 1CURSO DE PHP PARA INICIANTES - AULA 1
CURSO DE PHP PARA INICIANTES - AULA 1Norivan Oliveira
 
Exercicios Php
Exercicios PhpExercicios Php
Exercicios Phpsofteam
 
Curso de PHP Básico ao Avançado
Curso de PHP Básico ao AvançadoCurso de PHP Básico ao Avançado
Curso de PHP Básico ao AvançadoLuiz Junior
 
Segurança em Aplicações Web com PHP
Segurança em Aplicações Web com PHPSegurança em Aplicações Web com PHP
Segurança em Aplicações Web com PHPGedvan Dias
 
PHP para aplicações Web de grande porte
PHP para aplicações Web  de grande portePHP para aplicações Web  de grande porte
PHP para aplicações Web de grande porteFelipe Ribeiro
 
Criando e consumindo webservice REST com PHP e JSON
Criando e consumindo webservice REST com PHP e JSONCriando e consumindo webservice REST com PHP e JSON
Criando e consumindo webservice REST com PHP e JSONMarcio Junior Vieira
 
Lista de exercícios resolvidos
Lista de exercícios resolvidosLista de exercícios resolvidos
Lista de exercícios resolvidosCrishna Irion
 
Php5 Orientado A Objetos
Php5 Orientado A ObjetosPhp5 Orientado A Objetos
Php5 Orientado A ObjetosRápido Site
 
PHP Orientado a Objetos - 1a Parte
PHP Orientado a Objetos - 1a PartePHP Orientado a Objetos - 1a Parte
PHP Orientado a Objetos - 1a ParteJonata Weber
 
Gestão de Conteúdo Web: Guia Básico Utilizando o Joomla!
Gestão de Conteúdo Web: Guia Básico Utilizando o Joomla!Gestão de Conteúdo Web: Guia Básico Utilizando o Joomla!
Gestão de Conteúdo Web: Guia Básico Utilizando o Joomla!Daniel Corrêa
 
Como instalar servidor web xampp
Como instalar servidor web xamppComo instalar servidor web xampp
Como instalar servidor web xampparnaldo vasquez
 
Gestão de conteúdos com aplicações instaladas em servidores
Gestão de conteúdos com aplicações instaladas em servidoresGestão de conteúdos com aplicações instaladas em servidores
Gestão de conteúdos com aplicações instaladas em servidoresHenriqueta Sofia Djalo
 
Joomla! para iniciantes - Djonatan Buss, Jerônimo Medina Madruga
Joomla! para iniciantes - Djonatan Buss, Jerônimo Medina MadrugaJoomla! para iniciantes - Djonatan Buss, Jerônimo Medina Madruga
Joomla! para iniciantes - Djonatan Buss, Jerônimo Medina MadrugaTchelinux
 
Criação de sites Joomla com CCKs e frameworks de template - Joomla Day Ribeir...
Criação de sites Joomla com CCKs e frameworks de template - Joomla Day Ribeir...Criação de sites Joomla com CCKs e frameworks de template - Joomla Day Ribeir...
Criação de sites Joomla com CCKs e frameworks de template - Joomla Day Ribeir...jCursos
 

Viewers also liked (18)

CURSO DE PHP PARA INICIANTES - AULA 1
CURSO DE PHP PARA INICIANTES - AULA 1CURSO DE PHP PARA INICIANTES - AULA 1
CURSO DE PHP PARA INICIANTES - AULA 1
 
Exercicios Php
Exercicios PhpExercicios Php
Exercicios Php
 
Curso de PHP Básico ao Avançado
Curso de PHP Básico ao AvançadoCurso de PHP Básico ao Avançado
Curso de PHP Básico ao Avançado
 
Segurança em Aplicações Web com PHP
Segurança em Aplicações Web com PHPSegurança em Aplicações Web com PHP
Segurança em Aplicações Web com PHP
 
PHP para aplicações Web de grande porte
PHP para aplicações Web  de grande portePHP para aplicações Web  de grande porte
PHP para aplicações Web de grande porte
 
Criando e consumindo webservice REST com PHP e JSON
Criando e consumindo webservice REST com PHP e JSONCriando e consumindo webservice REST com PHP e JSON
Criando e consumindo webservice REST com PHP e JSON
 
Lista de exercícios resolvidos
Lista de exercícios resolvidosLista de exercícios resolvidos
Lista de exercícios resolvidos
 
Php 101: PDO
Php 101: PDOPhp 101: PDO
Php 101: PDO
 
Aula 01 - Curso PHP e MySQL
Aula 01 - Curso PHP e MySQLAula 01 - Curso PHP e MySQL
Aula 01 - Curso PHP e MySQL
 
Php5 Orientado A Objetos
Php5 Orientado A ObjetosPhp5 Orientado A Objetos
Php5 Orientado A Objetos
 
PHP Orientado a Objetos - 1a Parte
PHP Orientado a Objetos - 1a PartePHP Orientado a Objetos - 1a Parte
PHP Orientado a Objetos - 1a Parte
 
Gestão de Conteúdo Web: Guia Básico Utilizando o Joomla!
Gestão de Conteúdo Web: Guia Básico Utilizando o Joomla!Gestão de Conteúdo Web: Guia Básico Utilizando o Joomla!
Gestão de Conteúdo Web: Guia Básico Utilizando o Joomla!
 
Como instalar servidor web xampp
Como instalar servidor web xamppComo instalar servidor web xampp
Como instalar servidor web xampp
 
Joomla! CMS
Joomla! CMSJoomla! CMS
Joomla! CMS
 
Gestão de conteúdos com aplicações instaladas em servidores
Gestão de conteúdos com aplicações instaladas em servidoresGestão de conteúdos com aplicações instaladas em servidores
Gestão de conteúdos com aplicações instaladas em servidores
 
Joomla! para iniciantes - Djonatan Buss, Jerônimo Medina Madruga
Joomla! para iniciantes - Djonatan Buss, Jerônimo Medina MadrugaJoomla! para iniciantes - Djonatan Buss, Jerônimo Medina Madruga
Joomla! para iniciantes - Djonatan Buss, Jerônimo Medina Madruga
 
Criação de sites Joomla com CCKs e frameworks de template - Joomla Day Ribeir...
Criação de sites Joomla com CCKs e frameworks de template - Joomla Day Ribeir...Criação de sites Joomla com CCKs e frameworks de template - Joomla Day Ribeir...
Criação de sites Joomla com CCKs e frameworks de template - Joomla Day Ribeir...
 
Como Instalar o Joomla no micro
Como Instalar o Joomla no microComo Instalar o Joomla no micro
Como Instalar o Joomla no micro
 

Similar to Orientação a Objetos com PHP

Workshop ExtJS4
Workshop ExtJS4Workshop ExtJS4
Workshop ExtJS4javamanrj
 
Slide Aula - Curso CakePHP
Slide Aula - Curso CakePHPSlide Aula - Curso CakePHP
Slide Aula - Curso CakePHPRangel Javier
 
Seja um júnior não seja um sobrinho
Seja um júnior não seja um sobrinhoSeja um júnior não seja um sobrinho
Seja um júnior não seja um sobrinhoAlexandre Andrade
 
Dicas para sua carreira de Desenvolvedor PHP
Dicas para sua carreira de Desenvolvedor PHPDicas para sua carreira de Desenvolvedor PHP
Dicas para sua carreira de Desenvolvedor PHPDouglas V. Pasqua
 
Extreme Experience 2018 | Python para quem sabe Delphi
Extreme Experience 2018 | Python para quem sabe DelphiExtreme Experience 2018 | Python para quem sabe Delphi
Extreme Experience 2018 | Python para quem sabe DelphiMario Guedes
 
Doctrine 2 camada de persistência para php
Doctrine 2   camada de persistência para phpDoctrine 2   camada de persistência para php
Doctrine 2 camada de persistência para phpFabio B. Silva
 
Zend Framework Estrutura e TDD
Zend Framework Estrutura e TDDZend Framework Estrutura e TDD
Zend Framework Estrutura e TDDPHP Day Curitiba
 
Qualidade no desenvolvimento de Software com TDD e PHPUnit
Qualidade no desenvolvimento de Software com TDD e PHPUnitQualidade no desenvolvimento de Software com TDD e PHPUnit
Qualidade no desenvolvimento de Software com TDD e PHPUnitDomingos Teruel
 
Palestra na Faccat sobre o Zeanwork
Palestra na Faccat sobre o ZeanworkPalestra na Faccat sobre o Zeanwork
Palestra na Faccat sobre o ZeanworkJosemar Davi Luedke
 
Preparando-se para a prova da Certificação Zend PHP 5.3
Preparando-se para a prova da Certificação Zend PHP 5.3Preparando-se para a prova da Certificação Zend PHP 5.3
Preparando-se para a prova da Certificação Zend PHP 5.3klaussilveira
 
PHP Turbinado com CodeIgniter - Conisli 2011
PHP Turbinado com CodeIgniter - Conisli 2011PHP Turbinado com CodeIgniter - Conisli 2011
PHP Turbinado com CodeIgniter - Conisli 2011Evaldo Junior
 
Python - Programando em alto nível
Python - Programando em alto nívelPython - Programando em alto nível
Python - Programando em alto nívelIgor Sobreira
 
Desenvolvimento de Software I - USBWEBSERVER - PHP
Desenvolvimento de Software I - USBWEBSERVER - PHPDesenvolvimento de Software I - USBWEBSERVER - PHP
Desenvolvimento de Software I - USBWEBSERVER - PHPAndréia Santos
 

Similar to Orientação a Objetos com PHP (20)

Workshop ExtJS4
Workshop ExtJS4Workshop ExtJS4
Workshop ExtJS4
 
Slide Aula - Curso CakePHP
Slide Aula - Curso CakePHPSlide Aula - Curso CakePHP
Slide Aula - Curso CakePHP
 
Seja um júnior não seja um sobrinho
Seja um júnior não seja um sobrinhoSeja um júnior não seja um sobrinho
Seja um júnior não seja um sobrinho
 
Dicas para sua carreira de Desenvolvedor PHP
Dicas para sua carreira de Desenvolvedor PHPDicas para sua carreira de Desenvolvedor PHP
Dicas para sua carreira de Desenvolvedor PHP
 
Extreme Experience 2018 | Python para quem sabe Delphi
Extreme Experience 2018 | Python para quem sabe DelphiExtreme Experience 2018 | Python para quem sabe Delphi
Extreme Experience 2018 | Python para quem sabe Delphi
 
PHP, Mercado e Certificações
PHP, Mercado e CertificaçõesPHP, Mercado e Certificações
PHP, Mercado e Certificações
 
Refatoração
RefatoraçãoRefatoração
Refatoração
 
Doctrine 2 camada de persistência para php
Doctrine 2   camada de persistência para phpDoctrine 2   camada de persistência para php
Doctrine 2 camada de persistência para php
 
Zend Framework Estrutura e TDD
Zend Framework Estrutura e TDDZend Framework Estrutura e TDD
Zend Framework Estrutura e TDD
 
Qualidade no desenvolvimento de Software com TDD e PHPUnit
Qualidade no desenvolvimento de Software com TDD e PHPUnitQualidade no desenvolvimento de Software com TDD e PHPUnit
Qualidade no desenvolvimento de Software com TDD e PHPUnit
 
Palestra na Faccat sobre o Zeanwork
Palestra na Faccat sobre o ZeanworkPalestra na Faccat sobre o Zeanwork
Palestra na Faccat sobre o Zeanwork
 
Preparando-se para a prova da Certificação Zend PHP 5.3
Preparando-se para a prova da Certificação Zend PHP 5.3Preparando-se para a prova da Certificação Zend PHP 5.3
Preparando-se para a prova da Certificação Zend PHP 5.3
 
PHP 7 - A Maioridade do PHP
PHP 7 - A Maioridade do PHPPHP 7 - A Maioridade do PHP
PHP 7 - A Maioridade do PHP
 
Php manteiga
Php manteigaPhp manteiga
Php manteiga
 
PHP Turbinado com CodeIgniter - Conisli 2011
PHP Turbinado com CodeIgniter - Conisli 2011PHP Turbinado com CodeIgniter - Conisli 2011
PHP Turbinado com CodeIgniter - Conisli 2011
 
Zephir
ZephirZephir
Zephir
 
PHP para iniciantes - Boas Práticas
PHP para iniciantes - Boas PráticasPHP para iniciantes - Boas Práticas
PHP para iniciantes - Boas Práticas
 
Python - Programando em alto nível
Python - Programando em alto nívelPython - Programando em alto nível
Python - Programando em alto nível
 
Desenvolvimento de Software I - USBWEBSERVER - PHP
Desenvolvimento de Software I - USBWEBSERVER - PHPDesenvolvimento de Software I - USBWEBSERVER - PHP
Desenvolvimento de Software I - USBWEBSERVER - PHP
 
Clean code
Clean codeClean code
Clean code
 

More from Augusto Pascutti

Melhorando sua API com DSLs
Melhorando sua API com DSLsMelhorando sua API com DSLs
Melhorando sua API com DSLsAugusto Pascutti
 
Logs: O que comem, onde vivem e como se reproduzem.
Logs: O que comem, onde vivem e como se reproduzem.Logs: O que comem, onde vivem e como se reproduzem.
Logs: O que comem, onde vivem e como se reproduzem.Augusto Pascutti
 
TDD - Test Driven Development (em PHP)
TDD - Test Driven Development (em PHP)TDD - Test Driven Development (em PHP)
TDD - Test Driven Development (em PHP)Augusto Pascutti
 
Guia do mochileiro para escalabilidade
Guia do mochileiro para escalabilidadeGuia do mochileiro para escalabilidade
Guia do mochileiro para escalabilidadeAugusto Pascutti
 
Falhando miseralvelmente com PHP
Falhando miseralvelmente com PHPFalhando miseralvelmente com PHP
Falhando miseralvelmente com PHPAugusto Pascutti
 
SfCon: Test Driven Development
SfCon: Test Driven DevelopmentSfCon: Test Driven Development
SfCon: Test Driven DevelopmentAugusto Pascutti
 
Como escalar aplicações PHP
Como escalar aplicações PHPComo escalar aplicações PHP
Como escalar aplicações PHPAugusto Pascutti
 
PHP - O que, porquê e como
PHP - O que, porquê e comoPHP - O que, porquê e como
PHP - O que, porquê e comoAugusto Pascutti
 
Testar é bom, integrar é ainda melhor
Testar é bom, integrar é ainda melhorTestar é bom, integrar é ainda melhor
Testar é bom, integrar é ainda melhorAugusto Pascutti
 
PHPSC Conference 2010 - Testar é bom, integrar é melhor ainda!
PHPSC Conference 2010 - Testar é bom, integrar é melhor ainda!PHPSC Conference 2010 - Testar é bom, integrar é melhor ainda!
PHPSC Conference 2010 - Testar é bom, integrar é melhor ainda!Augusto Pascutti
 
Boas Práticas, Práticas !
Boas Práticas, Práticas !Boas Práticas, Práticas !
Boas Práticas, Práticas !Augusto Pascutti
 
Mão na Massa: Orientação a Objetos na Prática
Mão na Massa: Orientação a Objetos na PráticaMão na Massa: Orientação a Objetos na Prática
Mão na Massa: Orientação a Objetos na PráticaAugusto Pascutti
 

More from Augusto Pascutti (20)

Errors
ErrorsErrors
Errors
 
Melhorando sua API com DSLs
Melhorando sua API com DSLsMelhorando sua API com DSLs
Melhorando sua API com DSLs
 
Porque VIM?
Porque VIM?Porque VIM?
Porque VIM?
 
Logs: O que comem, onde vivem e como se reproduzem.
Logs: O que comem, onde vivem e como se reproduzem.Logs: O que comem, onde vivem e como se reproduzem.
Logs: O que comem, onde vivem e como se reproduzem.
 
TDD - Test Driven Development (em PHP)
TDD - Test Driven Development (em PHP)TDD - Test Driven Development (em PHP)
TDD - Test Driven Development (em PHP)
 
Guia do mochileiro para escalabilidade
Guia do mochileiro para escalabilidadeGuia do mochileiro para escalabilidade
Guia do mochileiro para escalabilidade
 
Falhando miseralvelmente com PHP
Falhando miseralvelmente com PHPFalhando miseralvelmente com PHP
Falhando miseralvelmente com PHP
 
SfCon: Test Driven Development
SfCon: Test Driven DevelopmentSfCon: Test Driven Development
SfCon: Test Driven Development
 
Orientação a objetos v2
Orientação a objetos v2Orientação a objetos v2
Orientação a objetos v2
 
Under engineer
Under engineerUnder engineer
Under engineer
 
Como escalar aplicações PHP
Como escalar aplicações PHPComo escalar aplicações PHP
Como escalar aplicações PHP
 
The small things
The small thingsThe small things
The small things
 
Somos jardineiros
Somos jardineirosSomos jardineiros
Somos jardineiros
 
PHP - O que, porquê e como
PHP - O que, porquê e comoPHP - O que, porquê e como
PHP - O que, porquê e como
 
Testar é bom, integrar é ainda melhor
Testar é bom, integrar é ainda melhorTestar é bom, integrar é ainda melhor
Testar é bom, integrar é ainda melhor
 
PHPSC Conference 2010 - Testar é bom, integrar é melhor ainda!
PHPSC Conference 2010 - Testar é bom, integrar é melhor ainda!PHPSC Conference 2010 - Testar é bom, integrar é melhor ainda!
PHPSC Conference 2010 - Testar é bom, integrar é melhor ainda!
 
Segurança em PHP
Segurança em PHPSegurança em PHP
Segurança em PHP
 
Boas Práticas, Práticas !
Boas Práticas, Práticas !Boas Práticas, Práticas !
Boas Práticas, Práticas !
 
Mitos do PHP
Mitos do PHPMitos do PHP
Mitos do PHP
 
Mão na Massa: Orientação a Objetos na Prática
Mão na Massa: Orientação a Objetos na PráticaMão na Massa: Orientação a Objetos na Prática
Mão na Massa: Orientação a Objetos na Prática
 

Orientação a Objetos com PHP

Editor's Notes

  1. - Usar PHP 5 - Colocar OO em prática
  2. - Usar PHP 5 - Colocar OO em prática
  3. - Usar PHP 5 - Colocar OO em prática
  4. - Usar PHP 5 - Colocar OO em prática
  5. - Esquecer Procedural - Como a mente funciona - Pensar OO
  6. - Esquecer Procedural - Como a mente funciona - Pensar OO
  7. - Esquecer Procedural - Como a mente funciona - Pensar OO
  8. - Esquecer Procedural - Como a mente funciona - Pensar OO
  9. - Esquecer Procedural - Como a mente funciona - Pensar OO
  10. - Possuem informações - Executam - Explicar resolução de escopo ‘->’
  11. - Explicar implementação da SPL
  12. - Explicar implementação da SPL
  13. - Atributo - Método
  14. - Atributo - Método
  15. - Atributo - Método
  16. - Troca de informações entre classes - Poder da OO
  17. - Era uma coisa e virou outra - Sobrecarga de método da classe pai - Diferente da sobrecarga em outras linguagens
  18. - Classe final - Método final
  19. - Classe final - Método final
  20. - Classe final - Método final
  21. - Classe final - Método final
  22. - Classe final - Método final
  23. - Métodos mágicos no PHP - 14 no PHP 5.3
  24. - Métodos mágicos no PHP - 14 no PHP 5.3
  25. - Métodos mágicos no PHP - 14 no PHP 5.3
  26. - Métodos mágicos no PHP - 14 no PHP 5.3
  27. - Métodos mágicos no PHP - 14 no PHP 5.3
  28. -> __toString() -> Depois do PHP 5.2 funciona com tudo (não só echo)
  29. - Métodos mágicos no PHP - 14 no PHP 5.3
  30. - Excessões da SPL
  31. - Referência a objetos - Typehint - instance of - Reflection
  32. - Gang of Four: 23 padrões - MVC - Value Object
  33. - Gang of Four: 23 padrões - MVC - Value Object
  34. - Gang of Four: 23 padrões - MVC - Value Object
  35. - Usam MVC, ORM, Active Record