SlideShare uma empresa Scribd logo
Alexandre Gomes Gaigalas
http://about.me/alganet




5 de Novembro             PHP'n Rio 2011   1
Hoje você vai ver...

 ●
     Como são alguns dos paradigmas de
     programação.

 ●
     PHP funcionando em múltiplos paradigmas.

 ●
     Recursos MUITO FODA da linguagem.



5 de Novembro          PHP'n Rio 2011           2
PHP Maroto




5 de Novembro   PHP'n Rio 2011   3
PHP Imperativo, Procedural




5 de Novembro   PHP'n Rio 2011   4
Ordens para o
                interpretador




PHP Imperativo, Procedural




5 de Novembro             PHP'n Rio 2011   5
Ordens para o
                interpretador




PHP Imperativo, Procedural
                                           Reuso de
                                           subrotinas




5 de Novembro             PHP'n Rio 2011                6
PHP Orientado a Objetos




5 de Novembro   PHP'n Rio 2011   7
PHP Orientado a Objetos

                Agrupamento de
                responsabilidades




5 de Novembro   PHP'n Rio 2011      8
PHP Reflexivo




5 de Novembro   PHP'n Rio 2011   9
PHP Reflexivo

                 Sabe sobre si mesmo
                em tempo de execução




5 de Novembro           PHP'n Rio 2011   10
É daqui que vem
                a mágica do PHP!


PHP Reflexivo

                 Sabe sobre si mesmo
                em tempo de execução




5 de Novembro           PHP'n Rio 2011   11
PHP Funcional




5 de Novembro   PHP'n Rio 2011   12
PHP Funcional
                Funções como recurso
                  de primeira-classe




5 de Novembro             PHP'n Rio 2011   13
Closures!


PHP Funcional
                Funções como recurso
                  de primeira-classe




5 de Novembro             PHP'n Rio 2011   14
PHP Multi-Paradigma




5 de Novembro   PHP'n Rio 2011   15
Pelo menos 4 paradigmas!


PHP Multi-Paradigma




5 de Novembro      PHP'n Rio 2011          16
Pelo menos 4 paradigmas!


PHP Multi-Paradigma
                Por que só focar em OOP? :(




5 de Novembro                        PHP'n Rio 2011         17
Assembly
                (apenas pra curiosidade da galera)




5 de Novembro               PHP'n Rio 2011           18
A maioria dos programadores
   nunca viu Assembly code na vida.




5 de Novembro   PHP'n Rio 2011        19
A maioria dos programadores
   nunca viu Assembly code na vida.
                Por mais que insistam que tenham visto, não acredite!




5 de Novembro                        PHP'n Rio 2011                     20
Assembly
                (apenas pra curiosidade da galera)

 ●
     Assembler == Montador
 ●
     Assembly == Montagem
 ●
     Vários Assemblers!
     ●
         AS86
     ●
         MASM
     ●
         GAS
     ●
         etc
 ●
     Depende da arquitetura do processador

5 de Novembro               PHP'n Rio 2011           21
Procedural / Imperativo

 ●
     Chamadas de sub-rotinas

 ●
     Estruturas de controle

 ●
     Variáveis com estado




5 de Novembro            PHP'n Rio 2011   22
Procedural / Imperativo

 ●
     Chamadas de sub-rotinas
                        mysql_connect(), mysql_last_insert_id(), etc.

 ●
     Estruturas de controle
                            If, else, for, while, switch, foreach, et..

 ●
     Variáveis com estado
                                          $oi = “Tudo bem”;




5 de Novembro            PHP'n Rio 2011                                   23
Procedural / Imperativo




5 de Novembro            PHP'n Rio 2011   24
Procedural / Imperativo / OO




5 de Novembro       PHP'n Rio 2011      25
OOP não substitui outros
                     paradigmas.




5 de Novembro            PHP'n Rio 2011    26
OOP complementa outros
                  paradigmas.




5 de Novembro        PHP'n Rio 2011   27
Smalltalk?




5 de Novembro     PHP'n Rio 2011   28
Smalltalk?
                    O resultado da comparação
                       é um objeto booleano




5 de Novembro     PHP'n Rio 2011                29
Smalltalk?
                    O resultado da comparação
                       é um objeto booleano



                    IfTrue e ifFalse
                      são métodos




5 de Novembro     PHP'n Rio 2011                30
Smalltalk?
                                        O resultado da comparação
                                           é um objeto booleano



                                        IfTrue e ifFalse
                                          são métodos
                  Mas a condição
                ainda é imperativa!




5 de Novembro                         PHP'n Rio 2011                31
OOP pura é impraticável.




5 de Novembro            PHP'n Rio 2011    32
OOP pura é impraticável.
         (e não existe definição formal de “oop pura”)




5 de Novembro              PHP'n Rio 2011                33
Orientação a Objetos

 ●
     Agrupamento de sub-rotinas
                            PDO->query(), PDO->lastInsertId()

 ●
     Organização de responsabilidades
                                 PDO, DateTime, SimpleXML
 ●
     Abstração
                         ZendDbAdapterPdoMySql extends ...




5 de Novembro          PHP'n Rio 2011                            34
Reflexão
                                  Função nativa




5 de Novembro    PHP'n Rio 2011                   35
Reflexão



                                    Função do usuário




                Chamada em tempo de execução
                    para qualquer função




5 de Novembro      PHP'n Rio 2011                       36
Reflexão




5 de Novembro    PHP'n Rio 2011   37
Reflexão




5 de Novembro    PHP'n Rio 2011   38
Reflexão

 ●
     ReflectionClass
 ●
     ReflectionMethod
 ●
     ReflectionParameter
 ●
     ReflectionFunction
 ●
     ReflectionProperty


     http://php.net/reflection (tem mais aqui!)

5 de Novembro           PHP'n Rio 2011            39
Reflexão – Quem, como?
 ●
     Doctrine ORM
     ●
         Conhecer as entidades e criar os proxies
     ●
         Tornar atributos privados acessíveis
 ●
     Zend DI
     ●
         Saber quais as dependências entre as classes
 ●
     Zend Server Reflection
     ●
         Mapear métodos para serviços
 ●
     Muita Gente =)
     ●
         Chamadas dinâmicas para construtores

5 de Novembro                PHP'n Rio 2011             40
Um mundo sem mágica =/




5 de Novembro           PHP'n Rio 2011   41
Mágica!




5 de Novembro    PHP'n Rio 2011   42
MongoDB sem mágica




5 de Novembro          PHP'n Rio 2011   43
MongoDB com mágica =D




5 de Novembro           PHP'n Rio 2011   44
Mágica no PHP

●   __get          - Obter propriedades
●   __set          - Definir propriedades
●   __isset        - Checar existência de propriedades
●   __unset        - Remover propriedades
●   __call         - Chamar métodos
●   __callStatic   - Chamar métodos estáticos
●   __invoke       - Chamar a classe como uma função
●   __toString     - Converter a classe para string


    http://php.net/oop5.magic (tem mais aqui!)
5 de Novembro               PHP'n Rio 2011               45
Mágica no PHP

 ●
     O problema não está na mágica, está no que
     você coloca dentro dela.

 ●
     Forneça sempre uma versão não-mágica.

 ●
     Documente sua mágica.



5 de Novembro          PHP'n Rio 2011             46
Funcional




5 de Novembro     PHP'n Rio 2011   47
Funcional




5 de Novembro     PHP'n Rio 2011   48
Funcional




5 de Novembro     PHP'n Rio 2011   49
Funcional




5 de Novembro     PHP'n Rio 2011   50
Funcional




5 de Novembro     PHP'n Rio 2011   51
Funcional




5 de Novembro     PHP'n Rio 2011   52
Funcional




5 de Novembro     PHP'n Rio 2011   53
Funcional




5 de Novembro     PHP'n Rio 2011   54
Imperativo




5 de Novembro   PHP'n Rio 2011                55
OOP
                                 (só estrutura!)




5 de Novembro   PHP'n Rio 2011                     56
Bônus!




5 de Novembro   PHP'n Rio 2011   57
Bônus!




5 de Novembro   PHP'n Rio 2011   58
Bônus!




5 de Novembro   PHP'n Rio 2011   59
PHP: The Good Parts
                 (na humilde opinião de @alganet)
●   Arrays http://php.net/book.array
●   Streams http://php.net/streams
    ●   http, sockets, arquivos, buffers
●   Batteries Included
    ●   PDO, SimpleXML, json_*, SOAPClient/Server, MongoDB, mail()
    ●   Simples de criar extensões
●   Excelente retrocompatibilidade
●   O menor Hello World do mundo
●   A melhor documentação online
●   Excelente comunidade no mundo inteiro


5 de Novembro                     PHP'n Rio 2011                     60
Hoje você viu...

 ●
     Como são alguns dos paradigmas de
     programação.

 ●
     PHP funcionando em múltiplos paradigmas.

 ●
     Recursos MUITO FODA da linguagem.



5 de Novembro         PHP'n Rio 2011            61
Perguntas?




5 de Novembro   PHP'n Rio 2011   62
Obrigado!




5 de Novembro   PHP'n Rio 2011   63

Mais conteúdo relacionado

PDF
REST: Faça o Serviço Direito
PDF
As Mudanças Culturais do PHP
PDF
Varrendo APIs REST em Larga Escala utilizando PHP
PDF
Frameworks PHP
PDF
Segurança em Aplicações Web com PHP
ODP
Desenvolvimento web e PHP
PPT
Desenvolvimento web: PHP orientado a objetos
ODP
Oficina de Web Design Lecom - PHP e JavaScript
REST: Faça o Serviço Direito
As Mudanças Culturais do PHP
Varrendo APIs REST em Larga Escala utilizando PHP
Frameworks PHP
Segurança em Aplicações Web com PHP
Desenvolvimento web e PHP
Desenvolvimento web: PHP orientado a objetos
Oficina de Web Design Lecom - PHP e JavaScript

Mais procurados (9)

PPTX
Comandos gerais do PHP
PDF
EVOLUÇÃO DA LINGUAGEM DELPHI - ARTIGO
PDF
Linguagem PHP
PDF
PHP para aplicações Web de grande porte
PPTX
PHP 7 - A Maioridade do PHP
PDF
Aula 02 - Introdução ao PHP
PPTX
PHP Além da universidade
PDF
TechEd Brasil 2011: DEV 303 - Atualizando suas habilidades de programação com...
PPT
Curso de PHP Básico ao Avançado
Comandos gerais do PHP
EVOLUÇÃO DA LINGUAGEM DELPHI - ARTIGO
Linguagem PHP
PHP para aplicações Web de grande porte
PHP 7 - A Maioridade do PHP
Aula 02 - Introdução ao PHP
PHP Além da universidade
TechEd Brasil 2011: DEV 303 - Atualizando suas habilidades de programação com...
Curso de PHP Básico ao Avançado
Anúncio

Semelhante a PHP Maroto (20)

PDF
Php m18
PDF
Serversidephp pptx2-120418140114-phpapp01
PDF
Linguagem PHP
PPTX
Apresentação da Linguagem de Programação PHP
PPT
PHP(I-Bim).ppt
PDF
phpDSFLKJLFKJSDFJLSFLSFDJLKSFLKSJFSFDJLKJ.pdf
PDF
PHP - Uma Pequena Introducao
PDF
PHP: Linguagem + Mysql + MVC + AJAX
PPTX
Introdução ao desenvolvimento com PHP
PDF
10+ Coisas Que Odeio Em Php
PDF
Frameworks de Desenvolvimento Web com PHP
PDF
PHP 5.3 - What's new?
PDF
FISL12. Web Services e Computação em Nuvem com PHP
PPT
Php
PDF
php1_LLKSDHFLSHDFLSFLJSFLSJFLSJFLSJFLSJF.pdf
PDF
Webinar php extreme 5.3
PDF
PHP - O que, porquê e como
PDF
Manual PHP
PDF
Php m18
Serversidephp pptx2-120418140114-phpapp01
Linguagem PHP
Apresentação da Linguagem de Programação PHP
PHP(I-Bim).ppt
phpDSFLKJLFKJSDFJLSFLSFDJLKSFLKSJFSFDJLKJ.pdf
PHP - Uma Pequena Introducao
PHP: Linguagem + Mysql + MVC + AJAX
Introdução ao desenvolvimento com PHP
10+ Coisas Que Odeio Em Php
Frameworks de Desenvolvimento Web com PHP
PHP 5.3 - What's new?
FISL12. Web Services e Computação em Nuvem com PHP
Php
php1_LLKSDHFLSHDFLSFLJSFLSJFLSJFLSJFLSJF.pdf
Webinar php extreme 5.3
PHP - O que, porquê e como
Manual PHP
Anúncio

Mais de Alexandre Gaigalas (9)

PDF
Domine Validação de Dados em 45min
PDF
REST: Faça o Serviço Direito - TDC Goiânia
PDF
Mágica com Manipulação de Imagens - TDC 2011 Goiânia
PDF
assertTrue($tdd) - Latinoware 2011
PDF
REST: Faça o Serviço Direito
PDF
Autoloaders Universais + Microframeworks em PHP - Trilha de PHP do TDC 2011
PDF
HTTP: A Base do Desenvolvimento Web - FISL 12
PDF
GET /conceitos HTTP/1.1
PDF
assertTrue($tdd)
Domine Validação de Dados em 45min
REST: Faça o Serviço Direito - TDC Goiânia
Mágica com Manipulação de Imagens - TDC 2011 Goiânia
assertTrue($tdd) - Latinoware 2011
REST: Faça o Serviço Direito
Autoloaders Universais + Microframeworks em PHP - Trilha de PHP do TDC 2011
HTTP: A Base do Desenvolvimento Web - FISL 12
GET /conceitos HTTP/1.1
assertTrue($tdd)

Último (19)

PPTX
Aula16ManipulaçãoDadosssssssssssssssssssssssssssss
PDF
20250805_ServiceNow e a Arquitetura Orientada a Serviços (SOA) A Base para Ap...
PDF
Fullfilment AI - Forum ecommerce 2025 // Distrito e Total Express
PPTX
Programação - Linguagem C - Variáveis, Palavras Reservadas, tipos de dados, c...
PDF
Mergulho profundo técnico para gestão de transportes no SAP S/4HANA, S4TM6 Col14
PPTX
BANCO DE DADOS - AULAS INICIAIS-sgbd.pptx
PDF
Processos na gestão de transportes, TM100 Col18
PDF
Custos e faturamento no SAP S/4HANA Transportation Management, S4TM3 Col26
PPTX
Como-se-implementa-um-softwareeeeeeeeeeeeeeeeeeeeeeeee.pptx
PPTX
Gestao-de-Bugs-em-Software-Introducao.pptxxxxxxxx
PDF
Custos e liquidação no SAP Transportation Management, TM130 Col18
PDF
COBITxITIL-Entenda as diferença em uso governança TI
PDF
Fundamentos de gerenciamento de ordens e planejamento no SAP TransportationMa...
PPTX
Aula 18 - Manipulacao De Arquivos python
PPTX
Informática Aplicada Informática Aplicada Plano de Ensino - estudo de caso NR...
PDF
Otimizador de planejamento e execução no SAP Transportation Management, TM120...
PDF
Aula04-Academia Heri- Tecnologia Geral 2025
PDF
Apple Pippin Uma breve introdução. - David Glotz
PDF
Gestão de transportes básica no SAP S/4HANA, S4611 Col20
Aula16ManipulaçãoDadosssssssssssssssssssssssssssss
20250805_ServiceNow e a Arquitetura Orientada a Serviços (SOA) A Base para Ap...
Fullfilment AI - Forum ecommerce 2025 // Distrito e Total Express
Programação - Linguagem C - Variáveis, Palavras Reservadas, tipos de dados, c...
Mergulho profundo técnico para gestão de transportes no SAP S/4HANA, S4TM6 Col14
BANCO DE DADOS - AULAS INICIAIS-sgbd.pptx
Processos na gestão de transportes, TM100 Col18
Custos e faturamento no SAP S/4HANA Transportation Management, S4TM3 Col26
Como-se-implementa-um-softwareeeeeeeeeeeeeeeeeeeeeeeee.pptx
Gestao-de-Bugs-em-Software-Introducao.pptxxxxxxxx
Custos e liquidação no SAP Transportation Management, TM130 Col18
COBITxITIL-Entenda as diferença em uso governança TI
Fundamentos de gerenciamento de ordens e planejamento no SAP TransportationMa...
Aula 18 - Manipulacao De Arquivos python
Informática Aplicada Informática Aplicada Plano de Ensino - estudo de caso NR...
Otimizador de planejamento e execução no SAP Transportation Management, TM120...
Aula04-Academia Heri- Tecnologia Geral 2025
Apple Pippin Uma breve introdução. - David Glotz
Gestão de transportes básica no SAP S/4HANA, S4611 Col20

PHP Maroto

  • 2. Hoje você vai ver... ● Como são alguns dos paradigmas de programação. ● PHP funcionando em múltiplos paradigmas. ● Recursos MUITO FODA da linguagem. 5 de Novembro PHP'n Rio 2011 2
  • 3. PHP Maroto 5 de Novembro PHP'n Rio 2011 3
  • 4. PHP Imperativo, Procedural 5 de Novembro PHP'n Rio 2011 4
  • 5. Ordens para o interpretador PHP Imperativo, Procedural 5 de Novembro PHP'n Rio 2011 5
  • 6. Ordens para o interpretador PHP Imperativo, Procedural Reuso de subrotinas 5 de Novembro PHP'n Rio 2011 6
  • 7. PHP Orientado a Objetos 5 de Novembro PHP'n Rio 2011 7
  • 8. PHP Orientado a Objetos Agrupamento de responsabilidades 5 de Novembro PHP'n Rio 2011 8
  • 9. PHP Reflexivo 5 de Novembro PHP'n Rio 2011 9
  • 10. PHP Reflexivo Sabe sobre si mesmo em tempo de execução 5 de Novembro PHP'n Rio 2011 10
  • 11. É daqui que vem a mágica do PHP! PHP Reflexivo Sabe sobre si mesmo em tempo de execução 5 de Novembro PHP'n Rio 2011 11
  • 12. PHP Funcional 5 de Novembro PHP'n Rio 2011 12
  • 13. PHP Funcional Funções como recurso de primeira-classe 5 de Novembro PHP'n Rio 2011 13
  • 14. Closures! PHP Funcional Funções como recurso de primeira-classe 5 de Novembro PHP'n Rio 2011 14
  • 15. PHP Multi-Paradigma 5 de Novembro PHP'n Rio 2011 15
  • 16. Pelo menos 4 paradigmas! PHP Multi-Paradigma 5 de Novembro PHP'n Rio 2011 16
  • 17. Pelo menos 4 paradigmas! PHP Multi-Paradigma Por que só focar em OOP? :( 5 de Novembro PHP'n Rio 2011 17
  • 18. Assembly (apenas pra curiosidade da galera) 5 de Novembro PHP'n Rio 2011 18
  • 19. A maioria dos programadores nunca viu Assembly code na vida. 5 de Novembro PHP'n Rio 2011 19
  • 20. A maioria dos programadores nunca viu Assembly code na vida. Por mais que insistam que tenham visto, não acredite! 5 de Novembro PHP'n Rio 2011 20
  • 21. Assembly (apenas pra curiosidade da galera) ● Assembler == Montador ● Assembly == Montagem ● Vários Assemblers! ● AS86 ● MASM ● GAS ● etc ● Depende da arquitetura do processador 5 de Novembro PHP'n Rio 2011 21
  • 22. Procedural / Imperativo ● Chamadas de sub-rotinas ● Estruturas de controle ● Variáveis com estado 5 de Novembro PHP'n Rio 2011 22
  • 23. Procedural / Imperativo ● Chamadas de sub-rotinas mysql_connect(), mysql_last_insert_id(), etc. ● Estruturas de controle If, else, for, while, switch, foreach, et.. ● Variáveis com estado $oi = “Tudo bem”; 5 de Novembro PHP'n Rio 2011 23
  • 24. Procedural / Imperativo 5 de Novembro PHP'n Rio 2011 24
  • 25. Procedural / Imperativo / OO 5 de Novembro PHP'n Rio 2011 25
  • 26. OOP não substitui outros paradigmas. 5 de Novembro PHP'n Rio 2011 26
  • 27. OOP complementa outros paradigmas. 5 de Novembro PHP'n Rio 2011 27
  • 28. Smalltalk? 5 de Novembro PHP'n Rio 2011 28
  • 29. Smalltalk? O resultado da comparação é um objeto booleano 5 de Novembro PHP'n Rio 2011 29
  • 30. Smalltalk? O resultado da comparação é um objeto booleano IfTrue e ifFalse são métodos 5 de Novembro PHP'n Rio 2011 30
  • 31. Smalltalk? O resultado da comparação é um objeto booleano IfTrue e ifFalse são métodos Mas a condição ainda é imperativa! 5 de Novembro PHP'n Rio 2011 31
  • 32. OOP pura é impraticável. 5 de Novembro PHP'n Rio 2011 32
  • 33. OOP pura é impraticável. (e não existe definição formal de “oop pura”) 5 de Novembro PHP'n Rio 2011 33
  • 34. Orientação a Objetos ● Agrupamento de sub-rotinas PDO->query(), PDO->lastInsertId() ● Organização de responsabilidades PDO, DateTime, SimpleXML ● Abstração ZendDbAdapterPdoMySql extends ... 5 de Novembro PHP'n Rio 2011 34
  • 35. Reflexão Função nativa 5 de Novembro PHP'n Rio 2011 35
  • 36. Reflexão Função do usuário Chamada em tempo de execução para qualquer função 5 de Novembro PHP'n Rio 2011 36
  • 37. Reflexão 5 de Novembro PHP'n Rio 2011 37
  • 38. Reflexão 5 de Novembro PHP'n Rio 2011 38
  • 39. Reflexão ● ReflectionClass ● ReflectionMethod ● ReflectionParameter ● ReflectionFunction ● ReflectionProperty http://php.net/reflection (tem mais aqui!) 5 de Novembro PHP'n Rio 2011 39
  • 40. Reflexão – Quem, como? ● Doctrine ORM ● Conhecer as entidades e criar os proxies ● Tornar atributos privados acessíveis ● Zend DI ● Saber quais as dependências entre as classes ● Zend Server Reflection ● Mapear métodos para serviços ● Muita Gente =) ● Chamadas dinâmicas para construtores 5 de Novembro PHP'n Rio 2011 40
  • 41. Um mundo sem mágica =/ 5 de Novembro PHP'n Rio 2011 41
  • 42. Mágica! 5 de Novembro PHP'n Rio 2011 42
  • 43. MongoDB sem mágica 5 de Novembro PHP'n Rio 2011 43
  • 44. MongoDB com mágica =D 5 de Novembro PHP'n Rio 2011 44
  • 45. Mágica no PHP ● __get - Obter propriedades ● __set - Definir propriedades ● __isset - Checar existência de propriedades ● __unset - Remover propriedades ● __call - Chamar métodos ● __callStatic - Chamar métodos estáticos ● __invoke - Chamar a classe como uma função ● __toString - Converter a classe para string http://php.net/oop5.magic (tem mais aqui!) 5 de Novembro PHP'n Rio 2011 45
  • 46. Mágica no PHP ● O problema não está na mágica, está no que você coloca dentro dela. ● Forneça sempre uma versão não-mágica. ● Documente sua mágica. 5 de Novembro PHP'n Rio 2011 46
  • 47. Funcional 5 de Novembro PHP'n Rio 2011 47
  • 48. Funcional 5 de Novembro PHP'n Rio 2011 48
  • 49. Funcional 5 de Novembro PHP'n Rio 2011 49
  • 50. Funcional 5 de Novembro PHP'n Rio 2011 50
  • 51. Funcional 5 de Novembro PHP'n Rio 2011 51
  • 52. Funcional 5 de Novembro PHP'n Rio 2011 52
  • 53. Funcional 5 de Novembro PHP'n Rio 2011 53
  • 54. Funcional 5 de Novembro PHP'n Rio 2011 54
  • 55. Imperativo 5 de Novembro PHP'n Rio 2011 55
  • 56. OOP (só estrutura!) 5 de Novembro PHP'n Rio 2011 56
  • 57. Bônus! 5 de Novembro PHP'n Rio 2011 57
  • 58. Bônus! 5 de Novembro PHP'n Rio 2011 58
  • 59. Bônus! 5 de Novembro PHP'n Rio 2011 59
  • 60. PHP: The Good Parts (na humilde opinião de @alganet) ● Arrays http://php.net/book.array ● Streams http://php.net/streams ● http, sockets, arquivos, buffers ● Batteries Included ● PDO, SimpleXML, json_*, SOAPClient/Server, MongoDB, mail() ● Simples de criar extensões ● Excelente retrocompatibilidade ● O menor Hello World do mundo ● A melhor documentação online ● Excelente comunidade no mundo inteiro 5 de Novembro PHP'n Rio 2011 60
  • 61. Hoje você viu... ● Como são alguns dos paradigmas de programação. ● PHP funcionando em múltiplos paradigmas. ● Recursos MUITO FODA da linguagem. 5 de Novembro PHP'n Rio 2011 61
  • 62. Perguntas? 5 de Novembro PHP'n Rio 2011 62
  • 63. Obrigado! 5 de Novembro PHP'n Rio 2011 63