Zend Framework:
Reuso e padrões para fácil manutenção


     Flávio Gomes da Silva Lisboa
            www.fgsl.eti.br
Quem sou eu?




www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
Agenda:

1)Você tem problemas (isso você já sabia)
2)Os problemas são mais graves do que você pensa
3)Eles vão piorar com o tempo
4)Você está perdido, ferrado, lascado, etc...
5)POG e XGH não vão te ajudar




                                                                                  Fonte: tokyostudent.blogspot.com
             www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
Agenda:

Mas existe esperança!




                    Fonte: eupodiatamatando.com

www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




O QUE É SOFTWARE?




          www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




O QUE É SOFTWARE?




   CÓDIGO-FONTE                                                              DOCUMENTAÇÃO
   Fonte: downloads.open4group.com                                              Fonte: rhjunior.com.br




                        www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




O QUE É SOFTWARE?




   CÓDIGO-FONTE                                                  DOCUMENTAÇÃO



            www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




DESENVOLVIMENTO DE SOFTWARE DESORGANIZADO




          www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




DESENVOLVIMENTO DE SOFTWARE DESORGANIZADO

                        O SOBRINHO




                      Fonte: apeedpedroiv.no.sapo.pt




          www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




DESENVOLVIMENTO DE SOFTWARE DESORGANIZADO
        PLANO DE CARREIRA DO SOBRINHO



                                                                            ATIRA!

                                                                          XGH
                                                                           SÊNIOR
                                PENSA

                               POG
                                PLENO
  PESQUISA

 CCF?B!
   JÚNIOR
              www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




DESENVOLVIMENTO DE SOFTWARE DESORGANIZADO




   Fonte: pelamordedeus.com.br


                           www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




DESENVOLVIMENTO DE SOFTWARE ORGANIZADO




Fonte: anarquiweb.com

                         www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




DESENVOLVIMENTO DE SOFTWARE ORGANIZADO




Fonte: anarquiweb.com

                         www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




DESENHAR RETÂNGULOS É LEGAL...




     Fonte: ciqs.fe.up.pt




                        www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




… MAS A REALIDADE É ESTA:

 “A construção [de código] toma normalmente de
30% a 80% do tempo total [de desenvolvimento]”.
            Steve McConnel (2005)




            www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




CÓDIGO-FONTE É UMA PRAGA!




 Fonte: planetaignis.blogspot.com

                              www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




CÓDIGO-FONTE É ERVA DANINHA!




          www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




CÓDIGO-FONTE É COELHO NA AUSTRÁLIA!




                                                                               Fonte: educ.fc.ul.pt


          www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




FATOS:


 DESENVOLVER = GERAR CÓDIGO-FONTE

    + CÓDIGO-FONTE → + COMPLEXO

  + COMPLEXO → + DIFÍCIL DE MANTER

     + DIFÍCIL DE MANTER → + CARO




          www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




FATOS:
DIFÍCIL DE MANTER => DEMORA PRA MUDAR

              TEMPO = DINHEIRO




           Fonte: castelodosaprendizes.com   Fonte: titoreccocom.blogspot.com




    SE VOCÊ NÃO TEM TEMPO, LOGO
       VOCÊ NÃO TEM DINHEIRO
          www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




PHP NAS MÃOS CERTAS...




      Fonte: asagastarwars.site90.com



                    www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




PHP NAS MÃOS ERRADAS...




                     Fonte: foreignerinformosa.typepad.com




          www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




Forma inadequada de uso
algumacoisa.php
<html>
<body>
<?php
while($entrarNaCabeca == false){
echo “Vou escrever código reusável”;
}
?>
</body>
</html>
         www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




                                               Palavras-chave:



                             Manutenção
Fonte: lucianomende.blogspot.com                                                                         Fonte: silverferramentas.com.br




                                             Reuso
                                    www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




Padrão de Projeto




   www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




Cada padrão
descreve um
problema que
ocorre
repetidamente
em nosso
ambiente...
        www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




    Cada
   padrão
descreve o
núcleo da
  solução
 para esse
problema...
         www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




   … de
forma tal
 que você
pode usar
   essa
 solução
milhões de
  vezes...
       www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




   … sem
   nunca
 fazê-la da
  mesma
   forma
    duas
   vezes.
* Christopher Alexander

                   www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




    O QUE UM PADRÃO DE PROJETO É
●   Um modelo de solução comprovada
●   Uma linguagem comum para
    desenvolvedores
●   Útil para compreender frameworks


SOLUÇÕES REUTILIZÁVEIS


            www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




O QUE UM PADRÃO DE PROJETO NÃO É
●   A solução para todos os problemas de
    projeto
●   Implementação final
●   Panacéia




             www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




“Frameworks são o mais alto
nível de reuso.
Eles tentam destilar o projeto de
software e identificar as
abstrações-chave para resolver
um problema”.
Erich Gamma em entrevista a Bill Venners



                 www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




“Construir um framework é um
alto risco e um investimento
significativo”.Erich Gamma em entrevista a Bill Venners




               www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




“Se você realmente quer assumir
o risco de construir frameworks,
você quer ter os menores e mais
focados frameworks que você
também pode provavelmente
tornar opcionais”.
Erich Gamma em entrevista a Bill Venners



                 www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte   Zend Framework
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




                            O que é Zend
                            Framework?



 www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




Um framework                                                        Título da Apresentação



completo?


Uma biblioteca
de componentes?

      www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




As duas coisas




  Fonte: 0001coisas.blogspot.com




                     www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




Ou até mais que isso




       www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte   Zend Framework
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




             MVC
           Controller
             View                                                              Data
                                                                             Database
                                                                               XML
                                                                              Search
                     Core                                                      PDF
Security            Cache
                                        Web Services
  Acl               Config
                                           Feed                                       i18n
 Auth                   Log
                                              Client                       Locale            Date
 Filter             Registry
                                              Server                     Translate        Calendar
Validate            Session
                                            Services                     Measure          Currency


                     www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




Zend Framework é
uma biblioteca de
  componentes
   fracamente
    acoplados.
   www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




Pra quem só quer trocar uma
 peça e não o carro inteiro...




      Fonte: info.abril.com.br

      www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




Arquitetura Self-Service




    www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




Outros
frameworks
podem usar
componentes
do Zend


       www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




Zend Framework é um
     framework
 extensível e flexível.




Fonte: emule.com.br                                           Fonte: online-naweb.blogspot.com


                      www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




ZF pode usar
outros
frameworks
e componentes
como se fossem
realmente parte
dele

        www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




Mais do que isso!
A arquitetura do Zend
Framework aproveita o
modelo de negócio de
software livre e evita
forks!




             www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




               METODOLOGIA
“NÃO QUERO PAGAR E TENHO PRAZO PRA ENTREGAR”
1. TENHO UM PROBLEMA!            2. USO A COMUNIDADE                           3. NÃO POSSO ESPERAR!




                                                                                 6. E SE TIVER QUE FAZER
                               5. RESOLVI O PROBLEMA!                            MANUTENÇÃO?
4. FAÇO UM FORK (OU POG)       (PELO MENOS AGORA...)




                    www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




                    METODOLOGIA
             “O ZEN DO ZEND FRAMEWORK”
1. TENHO UM PROBLEMA!          2. USO A COMUNIDADE                           3. NÃO POSSO ESPERAR!




                                             6. O QUE FOI PRA
4. ESTENDO, USANDO     5. RESOLVI O PROBLEMA COMUNIDADE SERÁ
A INTERFACE PADRÃO,    DIREITO!              TESTADO, APERFEIÇOADO E
E SUBMETO PRA COMUNIDADE
                                             PODEREI UTILIZAR SEM
                                             CAUSAR IMPACTO NA
                                             APLICAÇÃO!




                  www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




                                     COMUNIDADE




                                                                         SOLUÇÃO
 SOLUÇÃO IMEDIATA
                                                                       APERFEIÇOADA




$al = Zend_Loader_Autoloader::getInstance();
$al->registerNamespace('Serpro_');
$al->registerNamespace(array('Celepar_',
'Dataprev_', 'MEC_'));



             www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




   Parceiros e InvestidoresTítulo da Apresentação




 www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




Licença new BSD


CLA – Contributor
License Agreement


   www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




Características e Funcionalidades




        www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




  MVC
Controller

  View



          www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




 O Controlador observa a Visão

                    Controller




View                                                                         Model
        www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




O Controlador obtém dados da Visão

                     Controller




 View                                                                         Model
         www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




O Controlador atualiza o Modelo

                    Controller




View                                                                         Model
        www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




  O Modelo notifica a Visão

                    Controller




View                                                                         Model
        www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




A Visão obtém os dados do Modelo

                    Controller




View                                                                         Model
        www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




                             CLIENT                                             V
HTTP                                                                            HTTP
REQUEST                                                                         RESPONSE



                           SERVER                                 C M
           www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




              Que lindo!




 www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




Mas a realidade é mais dura...




      www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




Quebra de Paradigma




  www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




O Controlador não observa a Visão

                    Controller




View                                                                         Model
        www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




 A Visão não observa o Modelo

                    Controller




View                                                                         Model
        www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




 A Visão não fala com o Controlador
Front
                                                                      Controller
Controller




  View                                                                         Model
          www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




Toda requisição vai para o Front Controller
 Front
                                                                         Controller
 Controller

        HTTP
        REQUEST




    View                                                                          Model
             www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




O Front Controller designa um Page Controller

 Front                          EXECUTE
                                                                         Controller
 Controller

        HTTP
        REQUEST




    View                                                                          Model
             www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




A Visão obtém os dados do Modelo...
Front                         EXECUTE
                                                                       Controller
Controller

      HTTP
      REQUEST



                                GET DATA
  View                                                                          Model
           www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




    ...atualizados pelo Controlador
Front                         EXECUTE
                                                                       Controller
Controller

      HTTP                         SET DATA
      REQUEST



                                GET DATA
  View                                                                          Model
           www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




CONTROLADOR FRONTAL




           CASTELO DE BODIAM, INGLATERRA


 www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




                        CONTROLADOR
Padrão de Projeto: Controlador de página

 <?php

 class IndexController
     extends Zend_Controller_Action
 {
     public function init()
     {
         /* Initialize action controller here */
     }

        public function indexAction()
        {
            // action body
        }
 }
                     www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




                              CONTROLADOR
   Controlador de erros

class ErrorController extends Zend_Controller_Action
{
    public function errorAction()
    {
        $errors = $this->_getParam('error_handler');
        switch ($errors->type) {
            case 'EXCEPTION_NO_CONTROLLER':
            case 'EXCEPTION_NO_ACTION':
                // 404 error -- controller or action not found
                $this->getResponse()->setHttpResponseCode(404);
                $this->view->message = 'Page not found';
                break;
            default:
                // application error
                $this->getResponse()->setHttpResponseCode(500);
                $this->view->message = 'Application error';
                break;
        }        www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
                                                                                      Zend
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




                                  MODELO




Cláudia Schiffer                            Naomi Campbell                               Riyo Mori




                    www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




                          MODELO
Não tem Zend_Model...

Mas tem:
►Zend_Db_Table
►Zend_Feed
►Zend_Rest
►Zend_Service
►Zend_Soap
►Zend_XmlRpc
►Zend_Search_Lucene
...


            www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




                           MODELO
Zend_Db_Table

►Mapeia tabelas relacionais para classes PHP.
►Define relacionamentos e restrições no modelo.
►Permite construir consultas orientadas a objeto com
Zend_Db_Table_Select.
►Não obriga a criação de classes PHP (>1.10), pode
criar modelos dinamicamente.
►Pode ser usado de dois modos:
   →Tenho saudade de SQL
   → Active Record


             www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




                                VISÃO
Para a interface com o usuário, Zend Framework usa o
padrão de projeto Vista em Duas Etapas.

1) Primeiro ele transforma dos dados provenientes do
modelo, ou enviados pelo controlador, em uma
apresentação lógica, sem qualquer formatação
específica (Zend_View)

2) Depois, ele converte essa apresentação lógica na
formatação real necessária (Zend_Layout)



              www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




                                  VISÃO

Um layout pode servir para várias páginas:

  CSS
  Javascript                              Layout




   Página 1    Página 2            Página 3                Página 4                  Página 5



         CONTEÚDO, NO CORPO DO DOCUMENTO

                www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




                                     VISÃO

Zend_View permite reutilização de componente de visão: view partials


                                              Visão
                                             Principal




                  Partial 1                   Partial 2                      Partial 3



                      Partials podem ser reaproveitados

                   www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




Um projeto MVC pode ser criado rapidamente
com Zend Tool.

Ele pode ser executado na linha de comando ou
integrado com IDEs como Eclipse e Netbeans.

SEM APRISIONAMENTO POR IDE'S!




           www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




DÁ PRA LIGAR SEM CONTROLE REMOTO!

   # Unix:
   % zf.sh create project quickstart

   # DOS/Windows:
   C:> zf.bat create project quickstart




        www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




 quickstart
 |-- application
 |      |-- Bootstrap.php
 |      |-- configs
 |      |         `-- application.ini
 |      |-- controllers
 |      |         |-- ErrorController.php
 |      |         `-- IndexController.php
 |      |-- models
 |      `-- views
 |                |-- helpers
 |                `-- scripts
 |                    |-- error
 |                    |    `-- error.phtml
 |                    `-- index
 |                         `-- index.phtml
 |-- library
 |-- public
 |      `-- index.php
 `-- tests
        |-- application
        |         `-- bootstrap.php
        |-- library
        |         `-- bootstrap.php
 www.fgsl.eti.br Éphpunit.xml desde que citada a fonte
        `-- permitida a reprodução,
                                                            Zend
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




Fluxo da requisição e plugins



                                                                        C


   www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




Security
  Acl
                            CODIFICAÇÃO
 Auth
                            SEGURA
 Filter                            integração

Validate                                        Zend_Form

          www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




  Data
Database                                                                    PDO
  XML
 Search                                   NO SQL INJECTION
  PDF

       www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




 Core
 Cache
 Config
  Log
Registry                                                            INI, XML, PHP...
Session

         www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




                                                                            XML-RPC
                                                                            SOAP
Web Services
                                                                            REST
   Feed
  Client
  Server
 Services
            www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




Web Services
   Feed
  Client
  Server               COMPUTAÇÃO EM NUVEM COM PHP

 Services
            www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




   INTERNACIONALIZAÇÃO

 Locale    Date
Translate Calendar
Measure Currency
             www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




DEBUG

DOM

FILE                   NAVIGATION

FORM                   PAGINATOR

MAIL                             TEST
                                                                              ...
         www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




LEMBRE-SE DISSO:

                                           A Melhor
                                         maneira de
                                      reduzir Riscos no
                                      Desenvolvimento
                                        de Software é
                                            NÃO
                                      DESENVOLVER!


                 GRADY BOOCH, um dos criadores da UML

         www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




NÃO DESENVOLVA! REUSE!


                                                              E NÃO SE
                                                              ESQUEÇA
                                                               DISSO!




     www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




 MENSAGEM SUBLIMINAR:




 USE ZEND
FRAMEWORK!
   www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




                                          ALGUMA
                                         PERGUNTA?



                       http://framework.zend.com
                                 www.zfbrasil.com

 www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
PHPSC Conf 2010 – um dos maiores eventos de PHP do Brasil




                                     Obrigado!




        Fonte: carlosbritto.com




        Mas precisamos de tradutores!
http://groups.google.com.br/group/zfdoc-ptbr

                   www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte

Palestra Zend Framework PHPSC Conf 2010

  • 1.
    Zend Framework: Reuso epadrões para fácil manutenção Flávio Gomes da Silva Lisboa www.fgsl.eti.br
  • 2.
    Quem sou eu? www.fgsl.eti.brÉ permitida a reprodução, desde que citada a fonte
  • 3.
    Agenda: 1)Você tem problemas(isso você já sabia) 2)Os problemas são mais graves do que você pensa 3)Eles vão piorar com o tempo 4)Você está perdido, ferrado, lascado, etc... 5)POG e XGH não vão te ajudar Fonte: tokyostudent.blogspot.com www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 4.
    Agenda: Mas existe esperança! Fonte: eupodiatamatando.com www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 5.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil O QUE É SOFTWARE? www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 6.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil O QUE É SOFTWARE? CÓDIGO-FONTE DOCUMENTAÇÃO Fonte: downloads.open4group.com Fonte: rhjunior.com.br www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 7.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil O QUE É SOFTWARE? CÓDIGO-FONTE DOCUMENTAÇÃO www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 8.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil DESENVOLVIMENTO DE SOFTWARE DESORGANIZADO www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 9.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil DESENVOLVIMENTO DE SOFTWARE DESORGANIZADO O SOBRINHO Fonte: apeedpedroiv.no.sapo.pt www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 10.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil DESENVOLVIMENTO DE SOFTWARE DESORGANIZADO PLANO DE CARREIRA DO SOBRINHO ATIRA! XGH SÊNIOR PENSA POG PLENO PESQUISA CCF?B! JÚNIOR www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 11.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil DESENVOLVIMENTO DE SOFTWARE DESORGANIZADO Fonte: pelamordedeus.com.br www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 12.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil DESENVOLVIMENTO DE SOFTWARE ORGANIZADO Fonte: anarquiweb.com www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 13.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil DESENVOLVIMENTO DE SOFTWARE ORGANIZADO Fonte: anarquiweb.com www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 14.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil DESENHAR RETÂNGULOS É LEGAL... Fonte: ciqs.fe.up.pt www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 15.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil … MAS A REALIDADE É ESTA: “A construção [de código] toma normalmente de 30% a 80% do tempo total [de desenvolvimento]”. Steve McConnel (2005) www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 16.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil CÓDIGO-FONTE É UMA PRAGA! Fonte: planetaignis.blogspot.com www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 17.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil CÓDIGO-FONTE É ERVA DANINHA! www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 18.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil CÓDIGO-FONTE É COELHO NA AUSTRÁLIA! Fonte: educ.fc.ul.pt www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 19.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil FATOS: DESENVOLVER = GERAR CÓDIGO-FONTE + CÓDIGO-FONTE → + COMPLEXO + COMPLEXO → + DIFÍCIL DE MANTER + DIFÍCIL DE MANTER → + CARO www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 20.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil FATOS: DIFÍCIL DE MANTER => DEMORA PRA MUDAR TEMPO = DINHEIRO Fonte: castelodosaprendizes.com Fonte: titoreccocom.blogspot.com SE VOCÊ NÃO TEM TEMPO, LOGO VOCÊ NÃO TEM DINHEIRO www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 21.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil PHP NAS MÃOS CERTAS... Fonte: asagastarwars.site90.com www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 22.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil PHP NAS MÃOS ERRADAS... Fonte: foreignerinformosa.typepad.com www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 23.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil Forma inadequada de uso algumacoisa.php <html> <body> <?php while($entrarNaCabeca == false){ echo “Vou escrever código reusável”; } ?> </body> </html> www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 24.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil Palavras-chave: Manutenção Fonte: lucianomende.blogspot.com Fonte: silverferramentas.com.br Reuso www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 25.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil Padrão de Projeto www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 26.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil Cada padrão descreve um problema que ocorre repetidamente em nosso ambiente... www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 27.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil Cada padrão descreve o núcleo da solução para esse problema... www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 28.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil … de forma tal que você pode usar essa solução milhões de vezes... www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 29.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil … sem nunca fazê-la da mesma forma duas vezes. * Christopher Alexander www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 30.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil O QUE UM PADRÃO DE PROJETO É ● Um modelo de solução comprovada ● Uma linguagem comum para desenvolvedores ● Útil para compreender frameworks SOLUÇÕES REUTILIZÁVEIS www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 31.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil O QUE UM PADRÃO DE PROJETO NÃO É ● A solução para todos os problemas de projeto ● Implementação final ● Panacéia www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 32.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil “Frameworks são o mais alto nível de reuso. Eles tentam destilar o projeto de software e identificar as abstrações-chave para resolver um problema”. Erich Gamma em entrevista a Bill Venners www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 33.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil “Construir um framework é um alto risco e um investimento significativo”.Erich Gamma em entrevista a Bill Venners www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 34.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil “Se você realmente quer assumir o risco de construir frameworks, você quer ter os menores e mais focados frameworks que você também pode provavelmente tornar opcionais”. Erich Gamma em entrevista a Bill Venners www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte Zend Framework
  • 35.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil O que é Zend Framework? www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 36.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil Um framework Título da Apresentação completo? Uma biblioteca de componentes? www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 37.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil As duas coisas Fonte: 0001coisas.blogspot.com www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 38.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil Ou até mais que isso www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte Zend Framework
  • 39.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil MVC Controller View Data Database XML Search Core PDF Security Cache Web Services Acl Config Feed i18n Auth Log Client Locale Date Filter Registry Server Translate Calendar Validate Session Services Measure Currency www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 40.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil Zend Framework é uma biblioteca de componentes fracamente acoplados. www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 41.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil Pra quem só quer trocar uma peça e não o carro inteiro... Fonte: info.abril.com.br www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 42.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil Arquitetura Self-Service www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 43.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil Outros frameworks podem usar componentes do Zend www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 44.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil Zend Framework é um framework extensível e flexível. Fonte: emule.com.br Fonte: online-naweb.blogspot.com www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 45.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil ZF pode usar outros frameworks e componentes como se fossem realmente parte dele www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 46.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil Mais do que isso! A arquitetura do Zend Framework aproveita o modelo de negócio de software livre e evita forks! www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 47.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil METODOLOGIA “NÃO QUERO PAGAR E TENHO PRAZO PRA ENTREGAR” 1. TENHO UM PROBLEMA! 2. USO A COMUNIDADE 3. NÃO POSSO ESPERAR! 6. E SE TIVER QUE FAZER 5. RESOLVI O PROBLEMA! MANUTENÇÃO? 4. FAÇO UM FORK (OU POG) (PELO MENOS AGORA...) www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 48.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil METODOLOGIA “O ZEN DO ZEND FRAMEWORK” 1. TENHO UM PROBLEMA! 2. USO A COMUNIDADE 3. NÃO POSSO ESPERAR! 6. O QUE FOI PRA 4. ESTENDO, USANDO 5. RESOLVI O PROBLEMA COMUNIDADE SERÁ A INTERFACE PADRÃO, DIREITO! TESTADO, APERFEIÇOADO E E SUBMETO PRA COMUNIDADE PODEREI UTILIZAR SEM CAUSAR IMPACTO NA APLICAÇÃO! www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 49.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil COMUNIDADE SOLUÇÃO SOLUÇÃO IMEDIATA APERFEIÇOADA $al = Zend_Loader_Autoloader::getInstance(); $al->registerNamespace('Serpro_'); $al->registerNamespace(array('Celepar_', 'Dataprev_', 'MEC_')); www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 50.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil Parceiros e InvestidoresTítulo da Apresentação www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 51.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil Licença new BSD CLA – Contributor License Agreement www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 52.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil Características e Funcionalidades www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 53.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil MVC Controller View www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 54.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil O Controlador observa a Visão Controller View Model www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 55.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil O Controlador obtém dados da Visão Controller View Model www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 56.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil O Controlador atualiza o Modelo Controller View Model www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 57.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil O Modelo notifica a Visão Controller View Model www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 58.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil A Visão obtém os dados do Modelo Controller View Model www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 59.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil CLIENT V HTTP HTTP REQUEST RESPONSE SERVER C M www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 60.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil Que lindo! www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 61.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil Mas a realidade é mais dura... www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 62.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil Quebra de Paradigma www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 63.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil O Controlador não observa a Visão Controller View Model www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 64.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil A Visão não observa o Modelo Controller View Model www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 65.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil A Visão não fala com o Controlador Front Controller Controller View Model www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 66.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil Toda requisição vai para o Front Controller Front Controller Controller HTTP REQUEST View Model www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 67.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil O Front Controller designa um Page Controller Front EXECUTE Controller Controller HTTP REQUEST View Model www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 68.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil A Visão obtém os dados do Modelo... Front EXECUTE Controller Controller HTTP REQUEST GET DATA View Model www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 69.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil ...atualizados pelo Controlador Front EXECUTE Controller Controller HTTP SET DATA REQUEST GET DATA View Model www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 70.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil CONTROLADOR FRONTAL CASTELO DE BODIAM, INGLATERRA www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 71.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil CONTROLADOR Padrão de Projeto: Controlador de página <?php class IndexController extends Zend_Controller_Action { public function init() { /* Initialize action controller here */ } public function indexAction() { // action body } } www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 72.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil CONTROLADOR Controlador de erros class ErrorController extends Zend_Controller_Action { public function errorAction() { $errors = $this->_getParam('error_handler'); switch ($errors->type) { case 'EXCEPTION_NO_CONTROLLER': case 'EXCEPTION_NO_ACTION': // 404 error -- controller or action not found $this->getResponse()->setHttpResponseCode(404); $this->view->message = 'Page not found'; break; default: // application error $this->getResponse()->setHttpResponseCode(500); $this->view->message = 'Application error'; break; } www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte Zend
  • 73.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil MODELO Cláudia Schiffer Naomi Campbell Riyo Mori www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 74.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil MODELO Não tem Zend_Model... Mas tem: ►Zend_Db_Table ►Zend_Feed ►Zend_Rest ►Zend_Service ►Zend_Soap ►Zend_XmlRpc ►Zend_Search_Lucene ... www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 75.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil MODELO Zend_Db_Table ►Mapeia tabelas relacionais para classes PHP. ►Define relacionamentos e restrições no modelo. ►Permite construir consultas orientadas a objeto com Zend_Db_Table_Select. ►Não obriga a criação de classes PHP (>1.10), pode criar modelos dinamicamente. ►Pode ser usado de dois modos: →Tenho saudade de SQL → Active Record www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 76.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil VISÃO Para a interface com o usuário, Zend Framework usa o padrão de projeto Vista em Duas Etapas. 1) Primeiro ele transforma dos dados provenientes do modelo, ou enviados pelo controlador, em uma apresentação lógica, sem qualquer formatação específica (Zend_View) 2) Depois, ele converte essa apresentação lógica na formatação real necessária (Zend_Layout) www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 77.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil VISÃO Um layout pode servir para várias páginas: CSS Javascript Layout Página 1 Página 2 Página 3 Página 4 Página 5 CONTEÚDO, NO CORPO DO DOCUMENTO www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 78.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil VISÃO Zend_View permite reutilização de componente de visão: view partials Visão Principal Partial 1 Partial 2 Partial 3 Partials podem ser reaproveitados www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 79.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil Um projeto MVC pode ser criado rapidamente com Zend Tool. Ele pode ser executado na linha de comando ou integrado com IDEs como Eclipse e Netbeans. SEM APRISIONAMENTO POR IDE'S! www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 80.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil DÁ PRA LIGAR SEM CONTROLE REMOTO! # Unix: % zf.sh create project quickstart # DOS/Windows: C:> zf.bat create project quickstart www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 81.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil quickstart |-- application | |-- Bootstrap.php | |-- configs | | `-- application.ini | |-- controllers | | |-- ErrorController.php | | `-- IndexController.php | |-- models | `-- views | |-- helpers | `-- scripts | |-- error | | `-- error.phtml | `-- index | `-- index.phtml |-- library |-- public | `-- index.php `-- tests |-- application | `-- bootstrap.php |-- library | `-- bootstrap.php www.fgsl.eti.br Éphpunit.xml desde que citada a fonte `-- permitida a reprodução, Zend
  • 82.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil Fluxo da requisição e plugins C www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 83.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil Security Acl CODIFICAÇÃO Auth SEGURA Filter integração Validate Zend_Form www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 84.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil Data Database PDO XML Search NO SQL INJECTION PDF www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 85.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil Core Cache Config Log Registry INI, XML, PHP... Session www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 86.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil XML-RPC SOAP Web Services REST Feed Client Server Services www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 87.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil Web Services Feed Client Server COMPUTAÇÃO EM NUVEM COM PHP Services www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 88.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil INTERNACIONALIZAÇÃO Locale Date Translate Calendar Measure Currency www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 89.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil DEBUG DOM FILE NAVIGATION FORM PAGINATOR MAIL TEST ... www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 90.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil LEMBRE-SE DISSO: A Melhor maneira de reduzir Riscos no Desenvolvimento de Software é NÃO DESENVOLVER! GRADY BOOCH, um dos criadores da UML www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 91.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil NÃO DESENVOLVA! REUSE! E NÃO SE ESQUEÇA DISSO! www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 92.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil MENSAGEM SUBLIMINAR: USE ZEND FRAMEWORK! www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 93.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil ALGUMA PERGUNTA? http://framework.zend.com www.zfbrasil.com www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte
  • 94.
    PHPSC Conf 2010– um dos maiores eventos de PHP do Brasil Obrigado! Fonte: carlosbritto.com Mas precisamos de tradutores! http://groups.google.com.br/group/zfdoc-ptbr www.fgsl.eti.br É permitida a reprodução, desde que citada a fonte