SlideShare una empresa de Scribd logo
1 de 17
Mini-curso desenvolvendo
aplicações com Zend Framework
             Domingos Teruel
                Analista de Software




                     Belo Horizonte, outubro de 2009
     2º Encontro dos usuários de PHP de Minas Gerais
Experiência profissional
• Tecnólogo em Processamento de dados,
  especialista em Interfaces de sistemas;

• Atua no desenvolvimento e implementação
  de sistemas web com software livre;

• Desenvolvedor PHP desde 1999;
• Analista de software de ITI em Lightcomm
  Tecnologia e Serviços

• Consultor em tecnologias móvel
  (especialista em ambiente Blackberry)

                        Belo Horizonte, outubro de 2009
   2º Encontro dos usuários de PHP de Minas Gerais
Neste mini-curso
•   Por que usar o Zend Framework

•   O que o Zend Framework é capaz de fazer

•   A filosofia por detrás do Zend Framework

•   Desenvolvimento de aplicativos web dentro do
    paradigma MVC

•   Uma visão do desenvolvimento de aplicativos usando
    o Zend Framework

•   Como preparar o ambiente para o desenvolvimento


                          Belo Horizonte, outubro de 2009
     2º Encontro dos usuários de PHP de Minas Gerais
Introdução
• Estrutura típica em sites web PHP
      Cabeçalho HTML




        Conexão com
       Banco de dados      A organização de um arquivo
                          PHP típico, mescla de código
                          HTML e PHP de forma linear à
       Início da página    medida que o arquivo é criado.
             HTML



         Consulta ao
       Banco de dados



       Tabela HTML +
            PHP




       Rodapé HTML




                         Belo Horizonte, outubro de 2009
    2º Encontro dos usuários de PHP de Minas Gerais
Introdução
• Conceito do Modelo-Visão-Controlador
         Arquivo de
     Bootstrap:index.php
                                                              Uma aplicação MVC
  (configuração e conexão)                                    típica separa o código
                                                              de uma aplicação em
                                                                responsabilidades
   Arquivo de controlodor                                           separadas
   (Lógica da aplicação)



                                   Arquivo do Modelo
                              (consultas a banco de dados)
  Arquivo de template
        da visão
        (HTML)




                           Belo Horizonte, outubro de 2009
      2º Encontro dos usuários de PHP de Minas Gerais
Por que escolher o
         Zend Framework
•   Introdução de um conjunto padronizado de componentes (APIs)

•   Facilidade de desenvolvimento

•   Recursos fundamentais
    •   Tudo na caixa (conceito de box)

    •   Design Moderno

    •   Fácil de aprender

    •   Completa documentação

    •   Desenvolvimento simplificado

    •   Desenvolvimento rápido


                             Belo Horizonte, outubro de 2009
        2º Encontro dos usuários de PHP de Minas Gerais
Tudo na caixa

           MVC            Autenticação e acesso



                           Comunicação entre
    Internacionalização
                              Aplicações



      Serviços Web           Princiapl (core)




                                                   Existem vários componentes no ZF,
                                                entretanto podemos agrupá-los nestas seis
                                                   categorias para facilitar a referência.


                     Belo Horizonte, outubro de 2009
2º Encontro dos usuários de PHP de Minas Gerais
E mais
• Design Moderno
 • PHP 5
 • Padrões de design (design patterns)
 • Flexibilidade
 • O Framework reconhece o “jeito php”
 • Baixa dependência (acoplação)


                        Belo Horizonte, outubro de 2009
   2º Encontro dos usuários de PHP de Minas Gerais
E mais
• Fácil de aprender
 • Modulado
• Documentação completa
 • Documentação incluída (http://
    framework.zend.com/manual)

• Desenvolvimento simplificado
 • Extraí ao máximo os pontos fortes do PHP
 • codifique só o necessário
                        Belo Horizonte, outubro de 2009
   2º Encontro dos usuários de PHP de Minas Gerais
E mais
• Desenvolvimento rápido
  • Facilita a continuidade
  • Adição de novas funcionalidades
  • Menos é mais
  • Chega de tanta configuração
• Código estruturado é mais fácil de ser mantido

                         Belo Horizonte, outubro de 2009
    2º Encontro dos usuários de PHP de Minas Gerais
O que há no ZF
             MVC                  Autenticação e acesso
 Zend_Controller           Zend_Acl
 Zend_Application          Zend_Auth
 Zend_Layout               Zend_Session
 Zend_View                 Zend_OpenId
                           Zend_InfoCard
                                                                     O Zend
                                                               Framework provê
     Internacionalização
Zend_Currency
                              Comunicação entre aplicações
                           Zend_Http_Client
                                                              vários componentes
Zend_Date                  Zend_Http_Server                  que incluem tudo o que
Zend_Locale                Zend_Json
Zend_View                  Zend_Ldap                            é necessário para
Zend_Translate             Zend_Rest
                           Zend_TimeSync
                                                                 desenvolver um
                           Zend_XmlRpc                              aplicação
                                                                   profissional.
       Serviços Web                        Principal
Zend_Feed                  Zend_Db
Zend_GData                 Zend_Cache
Zend_Service_*             Zend_Config
                           Zend_Filter
                           Zend_Form
                           Zend_Log
                           Zend_Mail
                           Zend_Memory
                           Zend_Pdf
                           Zend_Registry
                           Zend_Search
                           Zend_Uri
                           Zend_Validate




                         Belo Horizonte, outubro de 2009
    2º Encontro dos usuários de PHP de Minas Gerais
Componentes do MVC
• Completo sistema de MVC
• O Modelo (Zend_Db e Zend_Service)
• A visão (Zend_View)
• O controlador (Zend_Controller)
 • Design do controlador Frontal (Front
    Controller design pattern)



                        Belo Horizonte, outubro de 2009
   2º Encontro dos usuários de PHP de Minas Gerais
O Ambiente
• Ambiente de desenvolvimento LAMP (Linux
  Apache Mysql PHP)

• Software pré-requisito
 • Apache Web Server 2.2.x
   • Módulo Rewrite habilitado
   • suporte a mudança de ambiente (htaccess)
 • PHP 5.2.x
                         Belo Horizonte, outubro de 2009
    2º Encontro dos usuários de PHP de Minas Gerais
Obtendo o Zend
              Framework
•   Download direto de http://framework.zend.com/download/latest

•   Os pacotes

    •   ZendServer Community Edition

    •   Full Package

        •    Pacote completo com demos, apis experimentais, Dojo Toolkit e
             documentação

    •   Minimal Package

        •    Pacote standard das bibliotecas

•   Subversion

    •   svn co http://framework.zend.com/svn/framework/standard/
        trunk


                                 Belo Horizonte, outubro de 2009
            2º Encontro dos usuários de PHP de Minas Gerais
Usando o zf-tool para
 iniciar um projeto
• desde a versão 1.7
• configurando o zf-tool
• testando o zf-tool
• iniciando um projeto



                         Belo Horizonte, outubro de 2009
    2º Encontro dos usuários de PHP de Minas Gerais
Criando nossa aplicação
      de exemplo
• Preparando nosso site de exemplo
 • criando o projeto
 • definindo o banco de dados
  Campo               Tipo       Nulo     Observações

             id     integer      Não    auto-incremento
      artista     varchar(100)   Não
          disco   varchar(100)   Não



                        Belo Horizonte, outubro de 2009
   2º Encontro dos usuários de PHP de Minas Gerais
Aplicação de Exemplo
• Para nossa aplicação de exemplos teremos a
  seguinte estrutura de páginas
                            Página inicial contento uma
     Página Inicial
                          listagem dos últimos registro
 Adicionar novo artista    Adicionar um novo registro
     Editar artista       Editar os dados de um artistia
     Apagar artista          Apagar registro de artista




                         Belo Horizonte, outubro de 2009
    2º Encontro dos usuários de PHP de Minas Gerais

Más contenido relacionado

La actualidad más candente

Introdução ao NodeJS
Introdução ao NodeJSIntrodução ao NodeJS
Introdução ao NodeJS
Giovanni Bassi
 
Introdução ao java fx e visage
Introdução ao java fx e visageIntrodução ao java fx e visage
Introdução ao java fx e visage
jesuinoPower
 

La actualidad más candente (20)

Conhecendo o Novo REST Framework
Conhecendo o Novo REST FrameworkConhecendo o Novo REST Framework
Conhecendo o Novo REST Framework
 
Mini Curso Zend Framework
Mini Curso Zend FrameworkMini Curso Zend Framework
Mini Curso Zend Framework
 
Deixando de ser moleque com PHP
Deixando de ser moleque com PHPDeixando de ser moleque com PHP
Deixando de ser moleque com PHP
 
Conhecendo o Zend Framework
Conhecendo o Zend FrameworkConhecendo o Zend Framework
Conhecendo o Zend Framework
 
Entendendo Conceitos Caching com PHP
Entendendo Conceitos Caching com PHPEntendendo Conceitos Caching com PHP
Entendendo Conceitos Caching com PHP
 
PHP Turbinado com CodeIgniter - Conisli 2011
PHP Turbinado com CodeIgniter - Conisli 2011PHP Turbinado com CodeIgniter - Conisli 2011
PHP Turbinado com CodeIgniter - Conisli 2011
 
O que esperar do Zend Framework 3
O que esperar do Zend Framework 3O que esperar do Zend Framework 3
O que esperar do Zend Framework 3
 
Jugvale
JugvaleJugvale
Jugvale
 
Javascript para adultos
Javascript para adultosJavascript para adultos
Javascript para adultos
 
JEE nas nuvens: uma introdução ao openshift
JEE nas nuvens:  uma introdução ao openshiftJEE nas nuvens:  uma introdução ao openshift
JEE nas nuvens: uma introdução ao openshift
 
Introdução ao NodeJS
Introdução ao NodeJSIntrodução ao NodeJS
Introdução ao NodeJS
 
NodeJS - Tutorial de forma simples e pratica.
NodeJS - Tutorial de forma simples e pratica.NodeJS - Tutorial de forma simples e pratica.
NodeJS - Tutorial de forma simples e pratica.
 
Por que Node JS?
Por que Node JS?Por que Node JS?
Por que Node JS?
 
Nodejs - A performance que eu sempre quis ter
Nodejs - A performance que eu sempre quis terNodejs - A performance que eu sempre quis ter
Nodejs - A performance que eu sempre quis ter
 
Palestra Zend Framework na Campus Party 2011
Palestra Zend Framework na Campus Party 2011Palestra Zend Framework na Campus Party 2011
Palestra Zend Framework na Campus Party 2011
 
Zend Framework: Reuso e extensão de componentes para fácil manutenção
Zend Framework: Reuso e extensão de componentes para fácil manutençãoZend Framework: Reuso e extensão de componentes para fácil manutenção
Zend Framework: Reuso e extensão de componentes para fácil manutenção
 
Zend Framework 2 - Desenvolvimento Ágil Competente
Zend Framework 2 - Desenvolvimento Ágil CompetenteZend Framework 2 - Desenvolvimento Ágil Competente
Zend Framework 2 - Desenvolvimento Ágil Competente
 
Node.js - #1 - Introdução - Rodrigo Branas
Node.js - #1 - Introdução - Rodrigo BranasNode.js - #1 - Introdução - Rodrigo Branas
Node.js - #1 - Introdução - Rodrigo Branas
 
Hangout Tempo Real Eventos - Nodejs - Os Primeiros Passos
Hangout  Tempo Real Eventos - Nodejs - Os Primeiros PassosHangout  Tempo Real Eventos - Nodejs - Os Primeiros Passos
Hangout Tempo Real Eventos - Nodejs - Os Primeiros Passos
 
Introdução ao java fx e visage
Introdução ao java fx e visageIntrodução ao java fx e visage
Introdução ao java fx e visage
 

Destacado

Álbum de fotografias SIPAT 2011 Obras MRV Joinville 2011
Álbum de fotografias SIPAT 2011 Obras MRV Joinville 2011Álbum de fotografias SIPAT 2011 Obras MRV Joinville 2011
Álbum de fotografias SIPAT 2011 Obras MRV Joinville 2011
Luciano Vieira
 
A INFLUÊNCIA DO ACESSO LIVRE À INTERNET NO TRABALHO NO COMPROMETIMENTO ORGANI...
A INFLUÊNCIA DO ACESSO LIVRE À INTERNET NO TRABALHO NO COMPROMETIMENTO ORGANI...A INFLUÊNCIA DO ACESSO LIVRE À INTERNET NO TRABALHO NO COMPROMETIMENTO ORGANI...
A INFLUÊNCIA DO ACESSO LIVRE À INTERNET NO TRABALHO NO COMPROMETIMENTO ORGANI...
Clebson DOS SANTOS
 
Concorr001.2013 servpublicsegov
Concorr001.2013 servpublicsegovConcorr001.2013 servpublicsegov
Concorr001.2013 servpublicsegov
Jamildo Melo
 
“O QUE TE MOVE” Elaboração de Programas de TV sobre movimentos culturais em BH
“O QUE TE MOVE” Elaboração de Programas de TV sobre movimentos culturais em BH“O QUE TE MOVE” Elaboração de Programas de TV sobre movimentos culturais em BH
“O QUE TE MOVE” Elaboração de Programas de TV sobre movimentos culturais em BH
Diego Fialho
 

Destacado (20)

Desmistificando o Framework da Zend
Desmistificando o Framework da ZendDesmistificando o Framework da Zend
Desmistificando o Framework da Zend
 
Proteja sua aplicação com o zend framework 2
Proteja sua aplicação com o zend framework 2Proteja sua aplicação com o zend framework 2
Proteja sua aplicação com o zend framework 2
 
Trabalhando com eventos e serviços no Zend Framework 2
Trabalhando com eventos e serviços no Zend Framework 2Trabalhando com eventos e serviços no Zend Framework 2
Trabalhando com eventos e serviços no Zend Framework 2
 
Desfrutando os Componentes do Zend Framework
Desfrutando os Componentes do Zend FrameworkDesfrutando os Componentes do Zend Framework
Desfrutando os Componentes do Zend Framework
 
Entendendo a Arquitetura MVC do Zend Framework
Entendendo a Arquitetura MVC do Zend FrameworkEntendendo a Arquitetura MVC do Zend Framework
Entendendo a Arquitetura MVC do Zend Framework
 
Espaço vintage Belo Horizonte
Espaço vintage Belo HorizonteEspaço vintage Belo Horizonte
Espaço vintage Belo Horizonte
 
Comandos basicos do_cad
Comandos basicos do_cadComandos basicos do_cad
Comandos basicos do_cad
 
Bibliografia, gabaritos das perguntas e exercícios
Bibliografia, gabaritos das perguntas e exercíciosBibliografia, gabaritos das perguntas e exercícios
Bibliografia, gabaritos das perguntas e exercícios
 
Álbum de fotografias SIPAT 2011 Obras MRV Joinville 2011
Álbum de fotografias SIPAT 2011 Obras MRV Joinville 2011Álbum de fotografias SIPAT 2011 Obras MRV Joinville 2011
Álbum de fotografias SIPAT 2011 Obras MRV Joinville 2011
 
A INFLUÊNCIA DO ACESSO LIVRE À INTERNET NO TRABALHO NO COMPROMETIMENTO ORGANI...
A INFLUÊNCIA DO ACESSO LIVRE À INTERNET NO TRABALHO NO COMPROMETIMENTO ORGANI...A INFLUÊNCIA DO ACESSO LIVRE À INTERNET NO TRABALHO NO COMPROMETIMENTO ORGANI...
A INFLUÊNCIA DO ACESSO LIVRE À INTERNET NO TRABALHO NO COMPROMETIMENTO ORGANI...
 
Organização de Eventos
Organização de EventosOrganização de Eventos
Organização de Eventos
 
SISTEMAS DE INFORMAÇÃO AO USUÁRIO DO TRANSPORTE PÚBLICO COLETIVO URBANO: EST...
SISTEMAS DE INFORMAÇÃO AO USUÁRIO DO TRANSPORTE PÚBLICO COLETIVO URBANO:  EST...SISTEMAS DE INFORMAÇÃO AO USUÁRIO DO TRANSPORTE PÚBLICO COLETIVO URBANO:  EST...
SISTEMAS DE INFORMAÇÃO AO USUÁRIO DO TRANSPORTE PÚBLICO COLETIVO URBANO: EST...
 
Ciclo do Lixo eletrônico em Belo Horizonte
Ciclo do Lixo eletrônico em Belo HorizonteCiclo do Lixo eletrônico em Belo Horizonte
Ciclo do Lixo eletrônico em Belo Horizonte
 
Desafios dos sistemas de informação para passageiros de ônibus
Desafios dos sistemas de informação para passageiros de ônibusDesafios dos sistemas de informação para passageiros de ônibus
Desafios dos sistemas de informação para passageiros de ônibus
 
Conheça como funcionará o Sistema Integrado de Transporte Coletivo de Sobral ...
Conheça como funcionará o Sistema Integrado de Transporte Coletivo de Sobral ...Conheça como funcionará o Sistema Integrado de Transporte Coletivo de Sobral ...
Conheça como funcionará o Sistema Integrado de Transporte Coletivo de Sobral ...
 
Estudo para elaboração do projeto básico de transporte coletivo de passageiro...
Estudo para elaboração do projeto básico de transporte coletivo de passageiro...Estudo para elaboração do projeto básico de transporte coletivo de passageiro...
Estudo para elaboração do projeto básico de transporte coletivo de passageiro...
 
Nr13 setal
Nr13   setalNr13   setal
Nr13 setal
 
Concorr001.2013 servpublicsegov
Concorr001.2013 servpublicsegovConcorr001.2013 servpublicsegov
Concorr001.2013 servpublicsegov
 
“O QUE TE MOVE” Elaboração de Programas de TV sobre movimentos culturais em BH
“O QUE TE MOVE” Elaboração de Programas de TV sobre movimentos culturais em BH“O QUE TE MOVE” Elaboração de Programas de TV sobre movimentos culturais em BH
“O QUE TE MOVE” Elaboração de Programas de TV sobre movimentos culturais em BH
 
SISTEMAS BRT: conceitos e elementos técnicos
SISTEMAS BRT: conceitos e elementos técnicosSISTEMAS BRT: conceitos e elementos técnicos
SISTEMAS BRT: conceitos e elementos técnicos
 

Similar a Desenvolvendo Aplicações com Zend Framework

PHP e componentes reutilizáveis
PHP e componentes reutilizáveisPHP e componentes reutilizáveis
PHP e componentes reutilizáveis
elliando dias
 
Desenvolvimento Web com CakePHP
Desenvolvimento Web com CakePHPDesenvolvimento Web com CakePHP
Desenvolvimento Web com CakePHP
Sérgio Vilar
 
Evolução do .NET Framework e do Visual Basic
Evolução do .NET Framework e do Visual BasicEvolução do .NET Framework e do Visual Basic
Evolução do .NET Framework e do Visual Basic
Ricardo Guerra Freitas
 
Treinamentos Avançados em Informática
Treinamentos Avançados em InformáticaTreinamentos Avançados em Informática
Treinamentos Avançados em Informática
Eder Carneiro
 

Similar a Desenvolvendo Aplicações com Zend Framework (20)

Symfony Flex @ PHP Community Summit 2018
Symfony Flex @ PHP Community Summit 2018Symfony Flex @ PHP Community Summit 2018
Symfony Flex @ PHP Community Summit 2018
 
Code Igniter & Zend Framework Uma UniãO De Sucesso
Code Igniter & Zend Framework   Uma UniãO De SucessoCode Igniter & Zend Framework   Uma UniãO De Sucesso
Code Igniter & Zend Framework Uma UniãO De Sucesso
 
Introducao ao PHP @edgarsandi
Introducao ao PHP @edgarsandiIntroducao ao PHP @edgarsandi
Introducao ao PHP @edgarsandi
 
FISL12. Web Services e Computação em Nuvem com PHP
FISL12. Web Services e Computação em Nuvem com PHPFISL12. Web Services e Computação em Nuvem com PHP
FISL12. Web Services e Computação em Nuvem com PHP
 
WP Composer
WP ComposerWP Composer
WP Composer
 
Palestra Zend Framework no Governo Federal
Palestra Zend Framework  no Governo FederalPalestra Zend Framework  no Governo Federal
Palestra Zend Framework no Governo Federal
 
Palestra Zend Framework CISL 2012 - ZF no Governo Federal
Palestra Zend Framework CISL 2012 - ZF no Governo FederalPalestra Zend Framework CISL 2012 - ZF no Governo Federal
Palestra Zend Framework CISL 2012 - ZF no Governo Federal
 
Code Igniter & Zend Framework - Uma união de sucesso
Code Igniter & Zend Framework - Uma união de sucessoCode Igniter & Zend Framework - Uma união de sucesso
Code Igniter & Zend Framework - Uma união de sucesso
 
PHP e componentes reutilizáveis
PHP e componentes reutilizáveisPHP e componentes reutilizáveis
PHP e componentes reutilizáveis
 
Framework PHP Zend e MVC
Framework PHP Zend e MVCFramework PHP Zend e MVC
Framework PHP Zend e MVC
 
Principais novidades do Entity Framework 5.0
Principais novidades do Entity Framework 5.0Principais novidades do Entity Framework 5.0
Principais novidades do Entity Framework 5.0
 
Desenvolvimento Web com CakePHP
Desenvolvimento Web com CakePHPDesenvolvimento Web com CakePHP
Desenvolvimento Web com CakePHP
 
Frameworks de Desenvolvimento Web com PHP
Frameworks de Desenvolvimento Web com PHPFrameworks de Desenvolvimento Web com PHP
Frameworks de Desenvolvimento Web com PHP
 
Desenvolvimento Web com Simfony Framework.
Desenvolvimento Web com Simfony Framework.Desenvolvimento Web com Simfony Framework.
Desenvolvimento Web com Simfony Framework.
 
Análise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e Zend
Análise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e ZendAnálise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e Zend
Análise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e Zend
 
Arteccom Workshop Magento
Arteccom Workshop MagentoArteccom Workshop Magento
Arteccom Workshop Magento
 
Introdução ao codeigniter
Introdução ao codeigniterIntrodução ao codeigniter
Introdução ao codeigniter
 
Aplicações Profissionais para Internet com Zend Framework
Aplicações Profissionais para Internet com Zend FrameworkAplicações Profissionais para Internet com Zend Framework
Aplicações Profissionais para Internet com Zend Framework
 
Evolução do .NET Framework e do Visual Basic
Evolução do .NET Framework e do Visual BasicEvolução do .NET Framework e do Visual Basic
Evolução do .NET Framework e do Visual Basic
 
Treinamentos Avançados em Informática
Treinamentos Avançados em InformáticaTreinamentos Avançados em Informática
Treinamentos Avançados em Informática
 

Más de Domingos Teruel

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
Domingos Teruel
 

Más de Domingos Teruel (10)

Lições aprendidas com a Re (escrita |design) de uma aplicação PHP
 Lições aprendidas com a Re (escrita |design) de uma aplicação PHP  Lições aprendidas com a Re (escrita |design) de uma aplicação PHP
Lições aprendidas com a Re (escrita |design) de uma aplicação PHP
 
Por dentro do Projeto openSUSE
Por dentro do Projeto openSUSEPor dentro do Projeto openSUSE
Por dentro do Projeto openSUSE
 
Vamos falar de Clean Code, Refatoração e TDD
Vamos falar de Clean Code, Refatoração e TDDVamos falar de Clean Code, Refatoração e TDD
Vamos falar de Clean Code, Refatoração e TDD
 
Zend Framework 2 - O que esperar da nova versão
Zend Framework 2 - O que esperar da nova versãoZend Framework 2 - O que esperar da nova versão
Zend Framework 2 - O que esperar da nova versão
 
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
 
Taxonomias e Tipos de Conteúdos com WordPress 3
Taxonomias e Tipos de Conteúdos com WordPress 3Taxonomias e Tipos de Conteúdos com WordPress 3
Taxonomias e Tipos de Conteúdos com WordPress 3
 
Desenvovelndo Aplicações com PHP, AJAX e Y!UI Yahoo User Interface
Desenvovelndo Aplicações com PHP, AJAX e Y!UI Yahoo User InterfaceDesenvovelndo Aplicações com PHP, AJAX e Y!UI Yahoo User Interface
Desenvovelndo Aplicações com PHP, AJAX e Y!UI Yahoo User Interface
 
Desenvolvendo Aplicativos com Zend Framework e banco de dados CDS/ISIS
Desenvolvendo Aplicativos com  Zend Framework  e banco de dados CDS/ISISDesenvolvendo Aplicativos com  Zend Framework  e banco de dados CDS/ISIS
Desenvolvendo Aplicativos com Zend Framework e banco de dados CDS/ISIS
 
Desenvolvendo aplicações PHP, AJAX e YUI! Yahoo User Interface
Desenvolvendo aplicações PHP, AJAX e YUI! Yahoo User InterfaceDesenvolvendo aplicações PHP, AJAX e YUI! Yahoo User Interface
Desenvolvendo aplicações PHP, AJAX e YUI! Yahoo User Interface
 
Desenvolvimento de Aplicações com Zend Framework e Yahoo! User Interface
Desenvolvimento de Aplicações com Zend Framework e Yahoo! User InterfaceDesenvolvimento de Aplicações com Zend Framework e Yahoo! User Interface
Desenvolvimento de Aplicações com Zend Framework e Yahoo! User Interface
 

Último

Último (9)

Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docxATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
 
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docxATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 
Luís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdfLuís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdf
 
Programação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdfProgramação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdf
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 

Desenvolvendo Aplicações com Zend Framework

  • 1. Mini-curso desenvolvendo aplicações com Zend Framework Domingos Teruel Analista de Software Belo Horizonte, outubro de 2009 2º Encontro dos usuários de PHP de Minas Gerais
  • 2. Experiência profissional • Tecnólogo em Processamento de dados, especialista em Interfaces de sistemas; • Atua no desenvolvimento e implementação de sistemas web com software livre; • Desenvolvedor PHP desde 1999; • Analista de software de ITI em Lightcomm Tecnologia e Serviços • Consultor em tecnologias móvel (especialista em ambiente Blackberry) Belo Horizonte, outubro de 2009 2º Encontro dos usuários de PHP de Minas Gerais
  • 3. Neste mini-curso • Por que usar o Zend Framework • O que o Zend Framework é capaz de fazer • A filosofia por detrás do Zend Framework • Desenvolvimento de aplicativos web dentro do paradigma MVC • Uma visão do desenvolvimento de aplicativos usando o Zend Framework • Como preparar o ambiente para o desenvolvimento Belo Horizonte, outubro de 2009 2º Encontro dos usuários de PHP de Minas Gerais
  • 4. Introdução • Estrutura típica em sites web PHP Cabeçalho HTML Conexão com Banco de dados A organização de um arquivo PHP típico, mescla de código HTML e PHP de forma linear à Início da página medida que o arquivo é criado. HTML Consulta ao Banco de dados Tabela HTML + PHP Rodapé HTML Belo Horizonte, outubro de 2009 2º Encontro dos usuários de PHP de Minas Gerais
  • 5. Introdução • Conceito do Modelo-Visão-Controlador Arquivo de Bootstrap:index.php Uma aplicação MVC (configuração e conexão) típica separa o código de uma aplicação em responsabilidades Arquivo de controlodor separadas (Lógica da aplicação) Arquivo do Modelo (consultas a banco de dados) Arquivo de template da visão (HTML) Belo Horizonte, outubro de 2009 2º Encontro dos usuários de PHP de Minas Gerais
  • 6. Por que escolher o Zend Framework • Introdução de um conjunto padronizado de componentes (APIs) • Facilidade de desenvolvimento • Recursos fundamentais • Tudo na caixa (conceito de box) • Design Moderno • Fácil de aprender • Completa documentação • Desenvolvimento simplificado • Desenvolvimento rápido Belo Horizonte, outubro de 2009 2º Encontro dos usuários de PHP de Minas Gerais
  • 7. Tudo na caixa MVC Autenticação e acesso Comunicação entre Internacionalização Aplicações Serviços Web Princiapl (core) Existem vários componentes no ZF, entretanto podemos agrupá-los nestas seis categorias para facilitar a referência. Belo Horizonte, outubro de 2009 2º Encontro dos usuários de PHP de Minas Gerais
  • 8. E mais • Design Moderno • PHP 5 • Padrões de design (design patterns) • Flexibilidade • O Framework reconhece o “jeito php” • Baixa dependência (acoplação) Belo Horizonte, outubro de 2009 2º Encontro dos usuários de PHP de Minas Gerais
  • 9. E mais • Fácil de aprender • Modulado • Documentação completa • Documentação incluída (http:// framework.zend.com/manual) • Desenvolvimento simplificado • Extraí ao máximo os pontos fortes do PHP • codifique só o necessário Belo Horizonte, outubro de 2009 2º Encontro dos usuários de PHP de Minas Gerais
  • 10. E mais • Desenvolvimento rápido • Facilita a continuidade • Adição de novas funcionalidades • Menos é mais • Chega de tanta configuração • Código estruturado é mais fácil de ser mantido Belo Horizonte, outubro de 2009 2º Encontro dos usuários de PHP de Minas Gerais
  • 11. O que há no ZF MVC Autenticação e acesso Zend_Controller Zend_Acl Zend_Application Zend_Auth Zend_Layout Zend_Session Zend_View Zend_OpenId Zend_InfoCard O Zend Framework provê Internacionalização Zend_Currency Comunicação entre aplicações Zend_Http_Client vários componentes Zend_Date Zend_Http_Server que incluem tudo o que Zend_Locale Zend_Json Zend_View Zend_Ldap é necessário para Zend_Translate Zend_Rest Zend_TimeSync desenvolver um Zend_XmlRpc aplicação profissional. Serviços Web Principal Zend_Feed Zend_Db Zend_GData Zend_Cache Zend_Service_* Zend_Config Zend_Filter Zend_Form Zend_Log Zend_Mail Zend_Memory Zend_Pdf Zend_Registry Zend_Search Zend_Uri Zend_Validate Belo Horizonte, outubro de 2009 2º Encontro dos usuários de PHP de Minas Gerais
  • 12. Componentes do MVC • Completo sistema de MVC • O Modelo (Zend_Db e Zend_Service) • A visão (Zend_View) • O controlador (Zend_Controller) • Design do controlador Frontal (Front Controller design pattern) Belo Horizonte, outubro de 2009 2º Encontro dos usuários de PHP de Minas Gerais
  • 13. O Ambiente • Ambiente de desenvolvimento LAMP (Linux Apache Mysql PHP) • Software pré-requisito • Apache Web Server 2.2.x • Módulo Rewrite habilitado • suporte a mudança de ambiente (htaccess) • PHP 5.2.x Belo Horizonte, outubro de 2009 2º Encontro dos usuários de PHP de Minas Gerais
  • 14. Obtendo o Zend Framework • Download direto de http://framework.zend.com/download/latest • Os pacotes • ZendServer Community Edition • Full Package • Pacote completo com demos, apis experimentais, Dojo Toolkit e documentação • Minimal Package • Pacote standard das bibliotecas • Subversion • svn co http://framework.zend.com/svn/framework/standard/ trunk Belo Horizonte, outubro de 2009 2º Encontro dos usuários de PHP de Minas Gerais
  • 15. Usando o zf-tool para iniciar um projeto • desde a versão 1.7 • configurando o zf-tool • testando o zf-tool • iniciando um projeto Belo Horizonte, outubro de 2009 2º Encontro dos usuários de PHP de Minas Gerais
  • 16. Criando nossa aplicação de exemplo • Preparando nosso site de exemplo • criando o projeto • definindo o banco de dados Campo Tipo Nulo Observações id integer Não auto-incremento artista varchar(100) Não disco varchar(100) Não Belo Horizonte, outubro de 2009 2º Encontro dos usuários de PHP de Minas Gerais
  • 17. Aplicação de Exemplo • Para nossa aplicação de exemplos teremos a seguinte estrutura de páginas Página inicial contento uma Página Inicial listagem dos últimos registro Adicionar novo artista Adicionar um novo registro Editar artista Editar os dados de um artistia Apagar artista Apagar registro de artista Belo Horizonte, outubro de 2009 2º Encontro dos usuários de PHP de Minas Gerais