Desenvolvimento em três camadas
    com PHP 5, MVC e AJAX
    Almir Neto – almirneto@gmail.com
   Otávio Calaça – otaviocx...
Desenvolvimento em três camadas
    com PHP 5, MVC e AJAX
Grupo de Desenvolvedores PHP de Goiás

    Lista de Discussão
●
...
Desenvolvimento em três camadas com PHP 5, MVC e AJAX




                              Roteiro
    • Web 2.0
    • Orient...
Desenvolvimento em três camadas com PHP 5, MVC e AJAX




         A ascensão da Web 2.0
    • O ápice da Web 1.0
      – ...
Desenvolvimento em três camadas com PHP 5, MVC e AJAX




              O que é Web 2.0?
       quot;Web 2.0 é a mudança p...
Desenvolvimento em três camadas com PHP 5, MVC e AJAX




             Regras da Web 2.0
    • O beta perpétuo
    • A Web...
Desenvolvimento em três camadas com PHP 5, MVC e AJAX




    Paradigmas de Programação
    • Programação Estruturada
    ...
Desenvolvimento em três camadas com PHP 5, MVC e AJAX




            Orientação a Objetos
    •   Conceito
    •   Classe...
Desenvolvimento em três camadas com PHP 5, MVC e AJAX




          Orientação a Objetos
    • Modificadores de Acesso
   ...
Desenvolvimento em três camadas com PHP 5, MVC e AJAX




           Orientação a Objetos
     • Herança
     • Encapsulam...
Desenvolvimento em três camadas com PHP 5, MVC e AJAX




                 O que é MVC?
     • Aplicações Monolíticas
    ...
Desenvolvimento em três camadas com PHP 5, MVC e AJAX




               Vantagens do MVC
     •   Reaproveitamento de cód...
Desenvolvimento em três camadas com PHP 5, MVC e AJAX




               Frameworks MVC
     •   Akelos
     •   CakePHP
 ...
Desenvolvimento em três camadas com PHP 5, MVC e AJAX




                           Camadas
     • Model
       – Bean
  ...
Desenvolvimento em três camadas com PHP 5, MVC e AJAX




                         Model
     • Bean
       – Entidade
   ...
Desenvolvimento em três camadas com PHP 5, MVC e AJAX




     Bean – Exemplo




16
Desenvolvimento em três camadas com PHP 5, MVC e AJAX




                         Model
     • DAO – Data Access Object
 ...
Desenvolvimento em três camadas com PHP 5, MVC e AJAX



      DAO – Exemplo




18
Desenvolvimento em três camadas com PHP 5, MVC e AJAX




                           Model
     • Action
       – Regras d...
Desenvolvimento em três camadas com PHP 5, MVC e AJAX




     Action – Exemplo




20
Desenvolvimento em três camadas com PHP 5, MVC e AJAX




                            View
     •   Ajax
     •   Template...
Desenvolvimento em três camadas com PHP 5, MVC e AJAX




      View – Exemplo




22
Desenvolvimento em três camadas com PHP 5, MVC e AJAX




                       Controller
     • Segurança

     • Contr...
Desenvolvimento em três camadas com PHP 5, MVC e AJAX




     Controller - Exemplo




24
Desenvolvimento em três camadas com PHP 5, MVC e AJAX




          Estrutura de diretórios
     • /aplicacao
       – con...
Desenvolvimento em três camadas com PHP 5, MVC e AJAX




     Fluxo da aplicação MVC




26
Desenvolvimento em três camadas com PHP 5, MVC e AJAX




     Conclusões sobre o MVC
 • Manter o baixo acoplamento
 • Evi...
Desenvolvimento em três camadas com PHP 5, MVC e AJAX




                O que é AJAX?
     • Requisição Comum
     • Out...
Desenvolvimento em três camadas com PHP 5, MVC e AJAX




                   Fluxo na WEB
       Sem AJAX                 ...
Desenvolvimento em três camadas com PHP 5, MVC e AJAX




            Vantagens do AJAX
     • Possibilita estender os eve...
Desenvolvimento em três camadas com PHP 5, MVC e AJAX




       O Objeto XMLHttpRequest
     • Requisição Assincrona;

  ...
Desenvolvimento em três camadas com PHP 5, MVC e AJAX




         Principais métodos do XHR
     •   open(método, URL, as...
Desenvolvimento em três camadas com PHP 5, MVC e AJAX




             Propriedades do XHR
     •   onreadystatechange
   ...
Desenvolvimento em três camadas com PHP 5, MVC e AJAX




                       A Resposta
     •   XML
     •   HTML
   ...
Desenvolvimento em três camadas com PHP 5, MVC e AJAX




            Bibliotecas JavaScript
     •   jQuery
     •   MooT...
Desenvolvimento em três camadas com PHP 5, MVC e AJAX




     Agradecimentos




36
Desenvolvimento em três camadas com PHP 5, MVC e AJAX




          Perguntas?

             Almir Neto
        almirneto@...
Desenvolvimento em três camadas com PHP 5, MVC e AJAX




                        Referências
     • Trygve's Homepage
   ...
Upcoming SlideShare
Loading in...5
×

Desenvolvimento em Três Camadas com PHP, MVC e Ajax

7,852

Published on

Slides used at CONAPHP 2008. The main subject is software development with PHP, MVC and AJAX

0 Comments
4 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
7,852
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
241
Comments
0
Likes
4
Embeds 0
No embeds

No notes for slide

Desenvolvimento em Três Camadas com PHP, MVC e Ajax

  1. 1. Desenvolvimento em três camadas com PHP 5, MVC e AJAX Almir Neto – almirneto@gmail.com Otávio Calaça – otaviocx@gmail.com http://phpendo.blogspot.com CoNaPHP – CONISLI 2008 http://www.conaphp.com.br/ São Paulo, 18 e 19 de Outubro de 2008
  2. 2. Desenvolvimento em três camadas com PHP 5, MVC e AJAX Grupo de Desenvolvedores PHP de Goiás Lista de Discussão ● Troca de Conhecimentos ● Encontros ● Palestras ● Eventos ● Networking ●
  3. 3. Desenvolvimento em três camadas com PHP 5, MVC e AJAX Roteiro • Web 2.0 • Orientação a Objetos • MVC Vantagens – Frameworks – Camadas – – Estrutura de Diretórios Fluxo da Aplicação – • AJAX – XMLHttpRequest 3
  4. 4. Desenvolvimento em três camadas com PHP 5, MVC e AJAX A ascensão da Web 2.0 • O ápice da Web 1.0 – A mania ponto com • O estouro da Bolha – A queda da Bolsa de Valores NASDAQ • Novos conceitos e novo paradigma para a Web 4
  5. 5. Desenvolvimento em três camadas com PHP 5, MVC e AJAX O que é Web 2.0? quot;Web 2.0 é a mudança para uma internet como plataforma, e um entendimento das regras para obter sucesso nesta nova plataforma. Entre outras, a regra mais importante é desenvolver aplicativos que aproveitem os efeitos de rede para se tornarem melhores quanto mais são usados pelas pessoas, aproveitando a inteligência coletivaquot; Tim O'Reilly 5
  6. 6. Desenvolvimento em três camadas com PHP 5, MVC e AJAX Regras da Web 2.0 • O beta perpétuo • A Web é a Plataforma – O navegador fornece aplicações e não conteúdo • Interatividade – Cooperativismo • Desenvolvimento Modular e Inteligente 6
  7. 7. Desenvolvimento em três camadas com PHP 5, MVC e AJAX Paradigmas de Programação • Programação Estruturada • Orientação a Objetos – C++ – Java – JavaScript – Perl – PHP – Python – Ruby – Outras ... 7
  8. 8. Desenvolvimento em três camadas com PHP 5, MVC e AJAX Orientação a Objetos • Conceito • Classes • Objetos • Métodos Atributos • 8
  9. 9. Desenvolvimento em três camadas com PHP 5, MVC e AJAX Orientação a Objetos • Modificadores de Acesso – Public – Private – Protected • Palavra-Chave 'final' 9
  10. 10. Desenvolvimento em três camadas com PHP 5, MVC e AJAX Orientação a Objetos • Herança • Encapsulamento – getXXX(); – setXXX(); 10
  11. 11. Desenvolvimento em três camadas com PHP 5, MVC e AJAX O que é MVC? • Aplicações Monolíticas • Aplicações em duas camadas • MVC (Model-View-Controller) – Padrão de Arquitetura – É um conceito – Fácil manutenção – Objetivos – Frameworks 11
  12. 12. Desenvolvimento em três camadas com PHP 5, MVC e AJAX Vantagens do MVC • Reaproveitamento de código Facilidade de manutenção • Integração de equipes e/ou divisão de tarefas • • Camada de Persistência independente • Implementação de segurança Facilidade na alteração da interface da • aplicação 12
  13. 13. Desenvolvimento em três camadas com PHP 5, MVC e AJAX Frameworks MVC • Akelos • CakePHP CodeIgniter • • PHP on Trax • Prado Symphony • Zend • • Outros ... 13
  14. 14. Desenvolvimento em três camadas com PHP 5, MVC e AJAX Camadas • Model – Bean – DAO – Actions • View • Controller 14
  15. 15. Desenvolvimento em três camadas com PHP 5, MVC e AJAX Model • Bean – Entidade – Segurança – Encapsulamento – Vantagens 15
  16. 16. Desenvolvimento em três camadas com PHP 5, MVC e AJAX Bean – Exemplo 16
  17. 17. Desenvolvimento em três camadas com PHP 5, MVC e AJAX Model • DAO – Data Access Object – Persistência – Portabilidade – Independência – Bibliotecas • Doctrine • Propel • Pear::DB_DataObject 17
  18. 18. Desenvolvimento em três camadas com PHP 5, MVC e AJAX DAO – Exemplo 18
  19. 19. Desenvolvimento em três camadas com PHP 5, MVC e AJAX Model • Action – Regras do Negócio – Integra Bean, DAO e Views 19
  20. 20. Desenvolvimento em três camadas com PHP 5, MVC e AJAX Action – Exemplo 20
  21. 21. Desenvolvimento em três camadas com PHP 5, MVC e AJAX View • Ajax • Templates • Web Standards • GTK (desktop) 21
  22. 22. Desenvolvimento em três camadas com PHP 5, MVC e AJAX View – Exemplo 22
  23. 23. Desenvolvimento em três camadas com PHP 5, MVC e AJAX Controller • Segurança • Controlar fluxo da aplicação – Inicia e finaliza o fluxo • Utilização de Web Services – Interoperabilidade 23
  24. 24. Desenvolvimento em três camadas com PHP 5, MVC e AJAX Controller - Exemplo 24
  25. 25. Desenvolvimento em três camadas com PHP 5, MVC e AJAX Estrutura de diretórios • /aplicacao – controle.php – /modulo • /action /view • • modulo.php (Bean) • moduloDAO.php 25
  26. 26. Desenvolvimento em três camadas com PHP 5, MVC e AJAX Fluxo da aplicação MVC 26
  27. 27. Desenvolvimento em três camadas com PHP 5, MVC e AJAX Conclusões sobre o MVC • Manter o baixo acoplamento • Evitar regras de negócio no Controller • Nem tudo em três camadas é MVC 27
  28. 28. Desenvolvimento em três camadas com PHP 5, MVC e AJAX O que é AJAX? • Requisição Comum • Outras soluções – Adobe Flash (Action Script) – IFrames • AJAX (Asynchronous Javascript And XML) – Maior Interação com o Usuário 28
  29. 29. Desenvolvimento em três camadas com PHP 5, MVC e AJAX Fluxo na WEB Sem AJAX Com AJAX Navegador Navegador Pag. WEB Pag. WEB Servidor da Servidor da Pag. WEB Aplicação Aplicação Página WEB WEB da WEB Pag. WEB Pag. WEB Pag. WEB 29
  30. 30. Desenvolvimento em três camadas com PHP 5, MVC e AJAX Vantagens do AJAX • Possibilita estender os eventos até o servidor; • Menor tráfego na rede; • Transparência para o usuário; • Semelhança com aplicações Desktop. 30
  31. 31. Desenvolvimento em três camadas com PHP 5, MVC e AJAX O Objeto XMLHttpRequest • Requisição Assincrona; • Ainda não é uma recomendação padronizada pela W3C (último Working Draft data de 15/04/2008); • Divergências entre navegadores. 31
  32. 32. Desenvolvimento em três camadas com PHP 5, MVC e AJAX Principais métodos do XHR • open(método, URL, async, usuário, senha); • send(parâmetros); • abort(); • setRequestHeader(propriedade, valor); 32
  33. 33. Desenvolvimento em três camadas com PHP 5, MVC e AJAX Propriedades do XHR • onreadystatechange • readyState status • • statusText responseText • • responseXML 33
  34. 34. Desenvolvimento em três camadas com PHP 5, MVC e AJAX A Resposta • XML • HTML • Script • Texto JSON • 34
  35. 35. Desenvolvimento em três camadas com PHP 5, MVC e AJAX Bibliotecas JavaScript • jQuery • MooTools • Prototype • Dojo Rico • extJS • 35
  36. 36. Desenvolvimento em três camadas com PHP 5, MVC e AJAX Agradecimentos 36
  37. 37. Desenvolvimento em três camadas com PHP 5, MVC e AJAX Perguntas? Almir Neto almirneto@gmail.com Otávio Calaça otaviocx@gmail.com 37
  38. 38. Desenvolvimento em três camadas com PHP 5, MVC e AJAX Referências • Trygve's Homepage http://heim.ifi.uio.no/trygver/ • PHP: Hypertext Preprocessor http://www.php.net • PHP Frameworks http://www.phpframeworks.com/ • JQuery http://jquery.com/ • PHP Magazine http://www.phpmagazine.org.br 38
  1. Gostou de algum slide específico?

    Recortar slides é uma maneira fácil de colecionar informações para acessar mais tarde.

×