Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Programação Orientada a Objetos com PHP

Programação Orientada a Objetos com PHP

Apresentação feita na disciplina de Orientação a Objetos na Faculdade Alfa de Umuarama(PR).

---
Original Stats on SlideShare:

Views 349
On SlideShare 342
From Embeds 8
Number of Embeds 8
Shares 0
Downloads 5
Comments 0
Likes 1
Embeds 8
pt.slideshare.net 76
www.slideshare.net 43
direct 4
www.fiapohost.net 3

Er Galvão Abbott

June 11, 2016
Tweet

More Decks by Er Galvão Abbott

Other Decks in Programming

Transcript

  1. www.galvao.eti.br CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott

    - 6/4/16 - 1 / 18 Programação Orientada a Objetos Professor Er Galvão Abbott Programação Orientada a Objetos como Linguagem de Implementação
  2. Presidente da ABRAPHP – Associação Brasileira de Profissionais PHP Diretor

    da PHP Conference Brasil Contribui para a tradução da documentação oficial Atua como Zend Framework Evangelist para o ZTeam, da Zend. Professor Especialista de Pós-Graduação 20+ anos desenvolvendo sistemas e aplicações com interface web 15+ destes com PHP 7+ com Zend Framework Palestrante em eventos nacionais e internacionais Instrutor de cursos presenciais e a distância Fundador e líder do GU PHPBR Fundador* e membro do GU PHPRS Site: http://www.galvao.eti.br/ http://people.php.net/galvao Twitter: @galvao Slides e Documentos: http://slideshare.net/ergalvao Github: http://github.com/galvao Posts: https://medium.com/@galvao Quem?! CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 6/4/16 - 2 / 18 www.galvao.eti.br Programação Orientada a Objetos
  3. Conteúdo CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott

    - 6/4/16 - 3 / 18 www.galvao.eti.br • O Paradigma de Orientação a Objetos • Vantagens e Desvantagens • Generalização e conceitualização de Objetos • Atributos e Ações • Particularidades da Orientação a Objetos para desenvolvimento web • Particularidades da linguagem PHP • Classes e Objetos • Atributos • Métodos • Herança • Injeção de Dependências • Namespaces • Autoloading • Abstração e Interfaces • Traits • Atributos e Métodos Estáticos • Métodos Especiais • Funções Auxiliares Programação Orientada a Objetos
  4. O Paradigma da Orientação a Objetos CC Attribution-ShareAlike 3.0 Unported

    License by Er Galvão Abbott - 6/4/16 - 4 / 18 www.galvao.eti.br Programação Orientada a Objetos Sequencial → Funcional → Orientada a Objetos
  5. Sequencial CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott

    - 6/4/16 - 5 / 18 www.galvao.eti.br Programação Orientada a Objetos
  6. CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott -

    6/4/16 - 6 / 18 www.galvao.eti.br Programação Orientada a Objetos Alto índice de repetição de código Não há necessidade de conceitualização Inexistência de Generalização Inexistência de Abstração Inexistência de Persistência Difícil Organização Longo tempo de Manutenção Praticidade Simplicidade Curto tempo de criação Sequencial
  7. Sequencial → Funcional CC Attribution-ShareAlike 3.0 Unported License by Er

    Galvão Abbott - 6/4/16 - 7 / 18 www.galvao.eti.br Programação Orientada a Objetos
  8. CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott -

    6/4/16 - 8 / 18 www.galvao.eti.br Programação Orientada a Objetos fn ( x , y ) { } Funcional
  9. CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott -

    6/4/16 - 9 / 18 www.galvao.eti.br Programação Orientada a Objetos fn ( x , y ) { } Funcional Médio índice de repetição de código Alguma conceitualização Alguma Generalização Inexistência de Abstração Inexistência de Persistência Razoável/Difícil Organização Médio tempo de Manutenção Razoável Praticidade Razoável Simplicidade Médio tempo de criação
  10. Funcional → Orientada a Objetos CC Attribution-ShareAlike 3.0 Unported License

    by Er Galvão Abbott - 6/4/16 - 10 / 18 www.galvao.eti.br Programação Orientada a Objetos • Identificação do Objeto • Definição de Características (Atributos) • Definição de Ações (Métodos) • Conceitualização / Generalização • Abstração
  11. Orientada a Objetos CC Attribution-ShareAlike 3.0 Unported License by Er

    Galvão Abbott - 6/4/16 - 11 / 18 www.galvao.eti.br Programação Orientada a Objetos fn () { } class { } x , y fn () { } }
  12. Orientada a Objetos CC Attribution-ShareAlike 3.0 Unported License by Er

    Galvão Abbott - 6/4/16 - 12 / 18 www.galvao.eti.br Programação Orientada a Objetos fn () { } class { } x , y fn () { } } Baixa Simplicidade Longo tempo de criação Baixo/Inexistente índice de repetição de código Alta conceitualização Alta Generalização Alta Abstração Persistência Alta Organização Médio/Curto Tempo de Manutenção
  13. Orientação a Objetos e a Web CC Attribution-ShareAlike 3.0 Unported

    License by Er Galvão Abbott - 6/4/16 - 13 / 18 www.galvao.eti.br Programação Orientada a Objetos / log public css img js / class log public css img js
  14. A Web CC Attribution-ShareAlike 3.0 Unported License by Er Galvão

    Abbott - 6/4/16 - 14 / 18 www.galvao.eti.br Programação Orientada a Objetos Requisição: index.php Processamento Resultado /public/index.php Browser Browser
  15. CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott -

    6/4/16 - 15 / 18 www.galvao.eti.br Programação Orientada a Objetos Requisição: index.php Processamento Resultado /public/index.php Browser Browser Orientação a Objetos e a Web /class/classe.php
  16. CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott -

    6/4/16 - 16 / 18 www.galvao.eti.br Programação Orientada a Objetos Orientação a Objetos e PHP • Métodos Construtores possuem nomes especiais • Herança Simples* • Não há sobrecarga de métodos Diferenças mais notáveis para outras linguagens OO: • Namespaces • Traits • Classes Anônimas** • Serialização Características OO notáveis:
  17. CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott -

    6/4/16 - 17 / 18 www.galvao.eti.br Programação Orientada a Objetos Classes são instruções de código-fonte responsáveis pela geração de Objetos. Cada Objeto gerado possui a mesma estrutura ditada pela Classe, ou seja, basicamente possui as mesmas Características (Atributos) e pode desempenhar as mesmas Ações (Métodos). Classes e Objetos
  18. CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott -

    6/4/16 - 18 / 18 www.galvao.eti.br Programação Orientada a Objetos C O1 O2 O3 O4 x, y fn () x, y fn () x, y fn () x, y fn () Classes e Objetos