SlideShare uma empresa Scribd logo
1 de 52
Baixar para ler offline
Flávio Gomes da Silva Lisboa
Zend Certified Engineer
Zend Framework 3
www.fgsl.eti.brwww.mcl.srv.br
1)A evolução do Zend Framework PHP
2)Principais características da versão 3
3)O que diferencia o ZF3 de outros frameworks
4)Dicas para começar a utilizar
5)Pré-requisitos
6)Cuidados básicos na implementação
7)Respostas às dúvidas do público
Roteiro
A evolução do Zend Framework PHP
www.fgsl.eti.brwww.mcl.srv.br
A evolução do Zend Framework PHP
www.fgsl.eti.brwww.mcl.srv.br
PHP 5.2
A evolução do Zend Framework PHP
www.fgsl.eti.brwww.mcl.srv.br
A evolução do Zend Framework PHP
www.fgsl.eti.brwww.mcl.srv.br
A evolução do Zend Framework PHP
www.fgsl.eti.brwww.mcl.srv.br
4 de setembro de 2012
Zend Framework 2
PHP 5.3
ZendEventManager
ZendServiceManager
A evolução do Zend Framework PHP
www.fgsl.eti.brwww.mcl.srv.br
1 2
A evolução do Zend Framework PHP
www.fgsl.eti.brwww.mcl.srv.br
Melhoria da
consistência e
performance;
Modularidade
obrigatória.
A evolução do Zend Framework PHP
www.fgsl.eti.brwww.mcl.srv.br
Principais características da versão 3
www.fgsl.eti.brwww.mcl.srv.br
Principais características da versão 3
www.fgsl.eti.brwww.mcl.srv.br
Ênfase em componentes;
Foco em HTTP, via PSR-7 e middleware;
Otimizado para PHP 7, mas suporta PHP 5.5+
Principais características da versão 3:
www.fgsl.eti.brwww.mcl.srv.br
Matthew Weier O'Phinney
A performance aumentou; Nós
mensuramos um desempenho
4 vezes superior sob PHP 5, e
ainda melhor sob PHP 7
Principais características da versão 3:
www.fgsl.eti.brwww.mcl.srv.br
Rostislav Mykhajliw in
http://pt.slideshare.net/fwdays/zend-framework-3-evolution-or-revolution
Principais características da versão 3:
www.fgsl.eti.brwww.mcl.srv.br
http://www.zimuel.it/slides/phpday2015/#/
Suporte a PHP 7
Principais características da versão 3
www.fgsl.eti.brwww.mcl.srv.br
Performance PHP [requisições/segundo]
PHP-5.61
PHP-72
HHVM-3.3.03
Diferença (2 e 3)
ZF1 Hello 1150 1655 961 72%
ZF2 Test 269 421 260 62%
Drupal 194 281 261 8%
SugarCRM (login) 132 225 165 36%
Magento 43 57 60 -5%
Symfony 2.5 ACME 85 110 92 20%
https://twitter.com/dextervip
Foco em componentes desacoplados.
Permite reuso em um grande número de
contextos.
Em alguns casos, novos pacotes foram criados.
Em outros, foi fornecida integração entre
múltiplos componentes
Principais características da versão 3
www.fgsl.eti.brwww.mcl.srv.br
Principais características da versão 3
www.fgsl.eti.brwww.mcl.srv.br
Principais características da versão 3
www.fgsl.eti.brwww.mcl.srv.br
Foco em
documentação.
Cada
componente
tem a sua
própria
documentação,
em seu
repositório.
Principais características da versão 3
www.fgsl.eti.brwww.mcl.srv.br
Principais características da versão 3
www.fgsl.eti.brwww.mcl.srv.br
Principais características da versão 3
www.fgsl.eti.brwww.mcl.srv.br
Principais características da versão 3
www.fgsl.eti.brwww.mcl.srv.br
Principais características da versão 3
www.fgsl.eti.brwww.mcl.srv.br
Principais características da versão 3
www.fgsl.eti.brwww.mcl.srv.br
Principais características da versão 3
www.fgsl.eti.brwww.mcl.srv.br
O que diferencia o ZF3 de outros frameworks
www.fgsl.eti.brwww.mcl.srv.br
O que diferencia o ZF3 de outros frameworks
www.fgsl.eti.brwww.mcl.srv.br
O que diferencia o ZF3 de outros frameworks
www.fgsl.eti.brwww.mcl.srv.br
O que diferencia o ZF3 de outros frameworks
www.fgsl.eti.brwww.mcl.srv.br
O que diferencia o ZF3 de outros frameworks
www.fgsl.eti.brwww.mcl.srv.br
Dicas para começar a utilizar
www.fgsl.eti.brwww.mcl.srv.br
Pré-requisitos
www.fgsl.eti.brwww.mcl.srv.br
Pré-requisitos
www.fgsl.eti.brwww.mcl.srv.br
Pré-requisitos
www.fgsl.eti.brwww.mcl.srv.br
Pré-requisitos
www.fgsl.eti.brwww.mcl.srv.br
Para começar:
Lembre-se de que um framework cuida do que é
mais genérico. O específico você sempre terá de
fazer.
Cuidados básicos na implementação
www.fgsl.eti.brwww.mcl.srv.br
Para migrar do ZF2 para ZF3:
Autoloading: delegado para o Composer;
Configuração: foi alterada;
Controladores: são injetáveis agora;
A classe Module: se juntou às outras;
Roteadores: Foram desacoplados.
Cuidados básicos na implementação
www.fgsl.eti.brwww.mcl.srv.br
1) Peso da aplicação, curva de aprendizado e
integração com outras soluções web, exemplo
Javascript e JQuery.
Respostas às dúvidas do público
www.fgsl.eti.brwww.mcl.srv.br
R1.1) O desenvolvedor controla o “peso”, pois
determina quais componentes quer utilizar.
R1.2) A curva de aprendizado depende dos pré-
requisitos.
R1.3) Não entra em conflito com nenhum produto
Javascript. Segue os padrões PHP-FIG.
Respostas às dúvidas do público
www.fgsl.eti.brwww.mcl.srv.br
2) É recomendável desde já para quem utiliza em
algum projeto o Zend Framework 2 já começar a
pensar na migração p/ o 3 ou ainda é cedo?
Respostas às dúvidas do público
www.fgsl.eti.brwww.mcl.srv.br
Respostas às dúvidas do público
www.fgsl.eti.brwww.mcl.srv.br
R2) DEMOROU!
Respostas às dúvidas do público
www.fgsl.eti.brwww.mcl.srv.br
3) Qual a previsão de implementação do Doctrine
com o ZF3?
Respostas às dúvidas do público
www.fgsl.eti.brwww.mcl.srv.br
R3) Zend Framework 3 é produzido pela Zend
Technologies. Doctrine é produzido pela Sensio
Labs.
Respostas às dúvidas do público
www.fgsl.eti.brwww.mcl.srv.br
https://olegkrivtsov.github.io/using-zend-framework-3-
book/html/en/Database_Management_with_Doctrine_ORM/Integrating_Doctrine_
ORM_with_Zend_Framework_3.html
4) Qual a relação atual do ZF3, em se tratando de
PSR'S?
Respostas às dúvidas do público
www.fgsl.eti.brwww.mcl.srv.br
Respostas às dúvidas do público
www.fgsl.eti.brwww.mcl.srv.br
V
V
V
V
V
5) ZF3 seria recomendado para projetos
pequenos? Ou somente para médios e grandes
projetos?
Respostas às dúvidas do público
www.fgsl.eti.brwww.mcl.srv.br
R5) Projetos pequenos podem usar Zend
Expressive, que é um componente do Zend
Framework 3.
Respostas às dúvidas do público
www.fgsl.eti.brwww.mcl.srv.br
6) Olá. Utilizei uma vez o zf1 num projeto e gostei
bastante mesmo sem ter explorado todas suas
funcionalidades. Cheguei a fazer um curso de zf2
mas percebi que muita coisa havia mudado.
Gostaria que o palestrante comentasse as
principais mudanças, na prática, do zf1 para o zf2
e do zf2 para o zf3. Agradeço desde já.
Respostas às dúvidas do público
www.fgsl.eti.brwww.mcl.srv.br
R6) Do ZF1 para o ZF2, é PHP 5.2 para PHP 5.3
(MUDA PRA CARAMBA). A migração é muito
difícil, é mais fácil refazer do zero.
Do ZF2 para o ZF3 há menos mudanças
estruturais. E algumas mudanças já foram sendo
feitas dentro do próprio ZF2.
Respostas às dúvidas do público
www.fgsl.eti.brwww.mcl.srv.br
www.mcl.srv.br
www.fgsl.eti.br
OBRIGADO!
www.fgsl.eti.brwww.mcl.srv.br

Mais conteúdo relacionado

Mais procurados

ASP.Net Core FAQ
ASP.Net Core FAQASP.Net Core FAQ
ASP.Net Core FAQLuiz Duarte
 
Php7 esta chgando! O que você precisa saber
Php7 esta chgando! O que você precisa saberPhp7 esta chgando! O que você precisa saber
Php7 esta chgando! O que você precisa saberEr Galvão Abbott
 
Introdução ao Python & Web Services
Introdução ao Python & Web ServicesIntrodução ao Python & Web Services
Introdução ao Python & Web ServicesDorneles Treméa
 
Introdução à Node.js + MongoDB
Introdução à Node.js + MongoDBIntrodução à Node.js + MongoDB
Introdução à Node.js + MongoDBLuiz Duarte
 
Otimizando a execução de código-fonte PHP
Otimizando a execução de código-fonte PHPOtimizando a execução de código-fonte PHP
Otimizando a execução de código-fonte PHPEr Galvão Abbott
 
Fazendo uma manada de elefantes passar por baixo da porta
Fazendo uma manada de elefantes passar por baixo da portaFazendo uma manada de elefantes passar por baixo da porta
Fazendo uma manada de elefantes passar por baixo da portaFabio Telles Rodriguez
 
Django - Desenvolvimento web ágil com Python
Django - Desenvolvimento web ágil com PythonDjango - Desenvolvimento web ágil com Python
Django - Desenvolvimento web ágil com PythonIgor Sobreira
 
DRYing the Skeleton: Reducing code repetition in ZF2
DRYing the Skeleton: Reducing code repetition in ZF2DRYing the Skeleton: Reducing code repetition in ZF2
DRYing the Skeleton: Reducing code repetition in ZF2Er Galvão Abbott
 
Android chat app com Node.js
Android chat app com Node.jsAndroid chat app com Node.js
Android chat app com Node.jsLuiz Duarte
 
Mini curso de django
Mini curso de djangoMini curso de django
Mini curso de djangorosenclever
 
Técnicas de frontend para aplicações django - PythonBrasil[9]
Técnicas de frontend para aplicações django  - PythonBrasil[9]Técnicas de frontend para aplicações django  - PythonBrasil[9]
Técnicas de frontend para aplicações django - PythonBrasil[9]Rael Max
 
Django: desenvolvendo aplicações web de maneira simples e rápida!
Django: desenvolvendo aplicações web de maneira simples e rápida!Django: desenvolvendo aplicações web de maneira simples e rápida!
Django: desenvolvendo aplicações web de maneira simples e rápida!Felipe Queiroz
 
15 coisas sobre php para saber antes de morrer
15 coisas sobre php para saber antes de morrer15 coisas sobre php para saber antes de morrer
15 coisas sobre php para saber antes de morrerMichele Silva
 
Domando a irreversibilidade com feature flags
Domando a irreversibilidade com feature flagsDomando a irreversibilidade com feature flags
Domando a irreversibilidade com feature flagsHugo Bessa
 
Django para desenvolvimento web; porque ser repetitivo é chato.
Django para desenvolvimento web; porque ser repetitivo é chato.Django para desenvolvimento web; porque ser repetitivo é chato.
Django para desenvolvimento web; porque ser repetitivo é chato.Arthur Furlan
 

Mais procurados (20)

ASP.Net Core FAQ
ASP.Net Core FAQASP.Net Core FAQ
ASP.Net Core FAQ
 
Php7 esta chgando! O que você precisa saber
Php7 esta chgando! O que você precisa saberPhp7 esta chgando! O que você precisa saber
Php7 esta chgando! O que você precisa saber
 
PostgreSQL Rock Star
PostgreSQL Rock StarPostgreSQL Rock Star
PostgreSQL Rock Star
 
Introdução ao Python & Web Services
Introdução ao Python & Web ServicesIntrodução ao Python & Web Services
Introdução ao Python & Web Services
 
Introdução à Node.js + MongoDB
Introdução à Node.js + MongoDBIntrodução à Node.js + MongoDB
Introdução à Node.js + MongoDB
 
Otimizando a execução de código-fonte PHP
Otimizando a execução de código-fonte PHPOtimizando a execução de código-fonte PHP
Otimizando a execução de código-fonte PHP
 
Fazendo uma manada de elefantes passar por baixo da porta
Fazendo uma manada de elefantes passar por baixo da portaFazendo uma manada de elefantes passar por baixo da porta
Fazendo uma manada de elefantes passar por baixo da porta
 
Django - Desenvolvimento web ágil com Python
Django - Desenvolvimento web ágil com PythonDjango - Desenvolvimento web ágil com Python
Django - Desenvolvimento web ágil com Python
 
Trabalhando com Logs no PostgreSQL
Trabalhando com Logs no PostgreSQLTrabalhando com Logs no PostgreSQL
Trabalhando com Logs no PostgreSQL
 
Trabalhando com Logs no PostgreSQL
Trabalhando com Logs no PostgreSQLTrabalhando com Logs no PostgreSQL
Trabalhando com Logs no PostgreSQL
 
DRYing the Skeleton: Reducing code repetition in ZF2
DRYing the Skeleton: Reducing code repetition in ZF2DRYing the Skeleton: Reducing code repetition in ZF2
DRYing the Skeleton: Reducing code repetition in ZF2
 
Android chat app com Node.js
Android chat app com Node.jsAndroid chat app com Node.js
Android chat app com Node.js
 
Mini curso de django
Mini curso de djangoMini curso de django
Mini curso de django
 
PHP 7 - A Maioridade do PHP
PHP 7 - A Maioridade do PHPPHP 7 - A Maioridade do PHP
PHP 7 - A Maioridade do PHP
 
Django - Muito além do básico
Django - Muito além do básicoDjango - Muito além do básico
Django - Muito além do básico
 
Técnicas de frontend para aplicações django - PythonBrasil[9]
Técnicas de frontend para aplicações django  - PythonBrasil[9]Técnicas de frontend para aplicações django  - PythonBrasil[9]
Técnicas de frontend para aplicações django - PythonBrasil[9]
 
Django: desenvolvendo aplicações web de maneira simples e rápida!
Django: desenvolvendo aplicações web de maneira simples e rápida!Django: desenvolvendo aplicações web de maneira simples e rápida!
Django: desenvolvendo aplicações web de maneira simples e rápida!
 
15 coisas sobre php para saber antes de morrer
15 coisas sobre php para saber antes de morrer15 coisas sobre php para saber antes de morrer
15 coisas sobre php para saber antes de morrer
 
Domando a irreversibilidade com feature flags
Domando a irreversibilidade com feature flagsDomando a irreversibilidade com feature flags
Domando a irreversibilidade com feature flags
 
Django para desenvolvimento web; porque ser repetitivo é chato.
Django para desenvolvimento web; porque ser repetitivo é chato.Django para desenvolvimento web; porque ser repetitivo é chato.
Django para desenvolvimento web; porque ser repetitivo é chato.
 

Semelhante a Zend framework 3 Hangout 2016

Desenvolvendo aplicações com ZF2
Desenvolvendo aplicações com ZF2Desenvolvendo aplicações com ZF2
Desenvolvendo aplicações com ZF2Er Galvão Abbott
 
Palestra Zend Framework FISL XI
Palestra Zend Framework FISL XIPalestra Zend Framework FISL XI
Palestra Zend Framework FISL XIFlávio Lisboa
 
TechEd Brasil 2010 - Novidades e razões para migrar para o microsoft .net fra...
TechEd Brasil 2010 - Novidades e razões para migrar para o microsoft .net fra...TechEd Brasil 2010 - Novidades e razões para migrar para o microsoft .net fra...
TechEd Brasil 2010 - Novidades e razões para migrar para o microsoft .net fra...JP Clementi
 
PHP Symfony, Vale A Pena
PHP Symfony, Vale A PenaPHP Symfony, Vale A Pena
PHP Symfony, Vale A PenaMarcelo Fleury
 
Arteccom Workshop Magento
Arteccom Workshop MagentoArteccom Workshop Magento
Arteccom Workshop MagentoThiago Verly
 
Interoperabilidade com .NET em ambiente Mainframe
Interoperabilidade com .NET em ambiente MainframeInteroperabilidade com .NET em ambiente Mainframe
Interoperabilidade com .NET em ambiente MainframeAlessandro Binhara
 
FISL11: Análise de binários ELF
FISL11: Análise de binários ELFFISL11: Análise de binários ELF
FISL11: Análise de binários ELFFernando Mercês
 
Workshop UDC - Parte I
Workshop UDC - Parte IWorkshop UDC - Parte I
Workshop UDC - Parte Iguest284c74
 
Frameworks de Desenvolvimento Web com PHP
Frameworks de Desenvolvimento Web com PHPFrameworks de Desenvolvimento Web com PHP
Frameworks de Desenvolvimento Web com PHPElton Minetto
 
Como criar módulos para magento 2
Como criar módulos para magento 2Como criar módulos para magento 2
Como criar módulos para magento 2Rafael Corrêa Gomes
 
Seu framework é melhor pra quê?
Seu framework é melhor pra quê?Seu framework é melhor pra quê?
Seu framework é melhor pra quê?Jaime Neto
 
Criando microsserviços em PHP
Criando microsserviços em PHPCriando microsserviços em PHP
Criando microsserviços em PHPFlávio Lisboa
 
DotNetDay novidades entityframework 4
DotNetDay novidades entityframework 4DotNetDay novidades entityframework 4
DotNetDay novidades entityframework 4Marcelo Paiva
 
Composer dependency manager
Composer   dependency managerComposer   dependency manager
Composer dependency managerVitor Mattos
 

Semelhante a Zend framework 3 Hangout 2016 (20)

Desenvolvendo aplicações com ZF2
Desenvolvendo aplicações com ZF2Desenvolvendo aplicações com ZF2
Desenvolvendo aplicações com ZF2
 
PHP: Evolução
PHP: EvoluçãoPHP: Evolução
PHP: Evolução
 
PHP Tools for Fast coding
PHP Tools for Fast codingPHP Tools for Fast coding
PHP Tools for Fast coding
 
Palestra Zend Framework FISL XI
Palestra Zend Framework FISL XIPalestra Zend Framework FISL XI
Palestra Zend Framework FISL XI
 
TechEd Brasil 2010 - Novidades e razões para migrar para o microsoft .net fra...
TechEd Brasil 2010 - Novidades e razões para migrar para o microsoft .net fra...TechEd Brasil 2010 - Novidades e razões para migrar para o microsoft .net fra...
TechEd Brasil 2010 - Novidades e razões para migrar para o microsoft .net fra...
 
Treinamento em Symfony2
Treinamento em Symfony2Treinamento em Symfony2
Treinamento em Symfony2
 
PHP Symfony, Vale A Pena
PHP Symfony, Vale A PenaPHP Symfony, Vale A Pena
PHP Symfony, Vale A Pena
 
Zabbix 3 0-cinfotec
Zabbix 3 0-cinfotecZabbix 3 0-cinfotec
Zabbix 3 0-cinfotec
 
Zfs
ZfsZfs
Zfs
 
Arteccom Workshop Magento
Arteccom Workshop MagentoArteccom Workshop Magento
Arteccom Workshop Magento
 
Interoperabilidade com .NET em ambiente Mainframe
Interoperabilidade com .NET em ambiente MainframeInteroperabilidade com .NET em ambiente Mainframe
Interoperabilidade com .NET em ambiente Mainframe
 
FISL11: Análise de binários ELF
FISL11: Análise de binários ELFFISL11: Análise de binários ELF
FISL11: Análise de binários ELF
 
Workshop UDC - Parte I
Workshop UDC - Parte IWorkshop UDC - Parte I
Workshop UDC - Parte I
 
Frameworks de Desenvolvimento Web com PHP
Frameworks de Desenvolvimento Web com PHPFrameworks de Desenvolvimento Web com PHP
Frameworks de Desenvolvimento Web com PHP
 
ZFS Filesystem
ZFS FilesystemZFS Filesystem
ZFS Filesystem
 
Como criar módulos para magento 2
Como criar módulos para magento 2Como criar módulos para magento 2
Como criar módulos para magento 2
 
Seu framework é melhor pra quê?
Seu framework é melhor pra quê?Seu framework é melhor pra quê?
Seu framework é melhor pra quê?
 
Criando microsserviços em PHP
Criando microsserviços em PHPCriando microsserviços em PHP
Criando microsserviços em PHP
 
DotNetDay novidades entityframework 4
DotNetDay novidades entityframework 4DotNetDay novidades entityframework 4
DotNetDay novidades entityframework 4
 
Composer dependency manager
Composer   dependency managerComposer   dependency manager
Composer dependency manager
 

Mais de Flávio Lisboa

Criando testes integrados de APIs com PHP
Criando testes integrados de APIs com PHPCriando testes integrados de APIs com PHP
Criando testes integrados de APIs com PHPFlávio Lisboa
 
Cooperativas de Software Livre: Uma comparação entre Brasil e Argentina
Cooperativas de Software Livre: Uma comparação entre Brasil e ArgentinaCooperativas de Software Livre: Uma comparação entre Brasil e Argentina
Cooperativas de Software Livre: Uma comparação entre Brasil e ArgentinaFlávio Lisboa
 
Aprenda a afiar suas garras com Laminas
Aprenda a afiar suas garras com LaminasAprenda a afiar suas garras com Laminas
Aprenda a afiar suas garras com LaminasFlávio Lisboa
 
Ciência e software livre: desenvolvendo com método
Ciência e software livre: desenvolvendo com métodoCiência e software livre: desenvolvendo com método
Ciência e software livre: desenvolvendo com métodoFlávio Lisboa
 
Turbinando microsserviços em PHP
Turbinando microsserviços em PHPTurbinando microsserviços em PHP
Turbinando microsserviços em PHPFlávio Lisboa
 
O que esperar do framework Laminas
O que esperar do framework LaminasO que esperar do framework Laminas
O que esperar do framework LaminasFlávio Lisboa
 
PHP Conference Brazil - What can we expect about framework Laminas?
PHP Conference Brazil - What can we expect about framework Laminas?PHP Conference Brazil - What can we expect about framework Laminas?
PHP Conference Brazil - What can we expect about framework Laminas?Flávio Lisboa
 
Algoritmos Genéticos em PHP - PHP Conference Brasil 2019
Algoritmos Genéticos em PHP - PHP Conference Brasil 2019Algoritmos Genéticos em PHP - PHP Conference Brasil 2019
Algoritmos Genéticos em PHP - PHP Conference Brasil 2019Flávio Lisboa
 
Como se tornar o pior programador PHP do mundo
Como se tornar o pior programador PHP do mundoComo se tornar o pior programador PHP do mundo
Como se tornar o pior programador PHP do mundoFlávio Lisboa
 
A demanda da santa entrega Batman: bugs e gargalos em aplicações PHP
A demanda da santa entrega Batman: bugs e gargalos em aplicações PHPA demanda da santa entrega Batman: bugs e gargalos em aplicações PHP
A demanda da santa entrega Batman: bugs e gargalos em aplicações PHPFlávio Lisboa
 
Comunicação e padrões em código aberto: quando convergente e divergente cooperam
Comunicação e padrões em código aberto: quando convergente e divergente cooperamComunicação e padrões em código aberto: quando convergente e divergente cooperam
Comunicação e padrões em código aberto: quando convergente e divergente cooperamFlávio Lisboa
 
Criação de robôs em PHP para raspagem de dados
Criação de robôs em PHP para raspagem de dadosCriação de robôs em PHP para raspagem de dados
Criação de robôs em PHP para raspagem de dadosFlávio Lisboa
 
Estudo de Caso: Utilização de PHP no Serviço Federal de Processamento de Dados
Estudo de Caso: Utilização de PHP no Serviço Federal de Processamento de DadosEstudo de Caso: Utilização de PHP no Serviço Federal de Processamento de Dados
Estudo de Caso: Utilização de PHP no Serviço Federal de Processamento de DadosFlávio Lisboa
 
Arquitetura PHP para um mundo orientado a microsserviços
Arquitetura PHP para um mundo orientado a microsserviçosArquitetura PHP para um mundo orientado a microsserviços
Arquitetura PHP para um mundo orientado a microsserviçosFlávio Lisboa
 
Semeando Liberdade: Como (e onde) o software livre inclui as pessoas
Semeando Liberdade: Como (e onde) o software livre inclui as pessoasSemeando Liberdade: Como (e onde) o software livre inclui as pessoas
Semeando Liberdade: Como (e onde) o software livre inclui as pessoasFlávio Lisboa
 
O que é programação de computadores
O que é programação de computadoresO que é programação de computadores
O que é programação de computadoresFlávio Lisboa
 
Economia em rede (comunidade)
Economia em rede (comunidade)Economia em rede (comunidade)
Economia em rede (comunidade)Flávio Lisboa
 
Aplicações Corporativas em PHP (CRM e ERP)
Aplicações Corporativas em PHP (CRM e ERP)Aplicações Corporativas em PHP (CRM e ERP)
Aplicações Corporativas em PHP (CRM e ERP)Flávio Lisboa
 
Desenvolvimento Orientado a API (e extraindo existentes com PHP)
Desenvolvimento Orientado a API (e extraindo existentes com PHP)Desenvolvimento Orientado a API (e extraindo existentes com PHP)
Desenvolvimento Orientado a API (e extraindo existentes com PHP)Flávio Lisboa
 

Mais de Flávio Lisboa (20)

Criando testes integrados de APIs com PHP
Criando testes integrados de APIs com PHPCriando testes integrados de APIs com PHP
Criando testes integrados de APIs com PHP
 
Cooperativas de Software Livre: Uma comparação entre Brasil e Argentina
Cooperativas de Software Livre: Uma comparação entre Brasil e ArgentinaCooperativas de Software Livre: Uma comparação entre Brasil e Argentina
Cooperativas de Software Livre: Uma comparação entre Brasil e Argentina
 
Aprenda a afiar suas garras com Laminas
Aprenda a afiar suas garras com LaminasAprenda a afiar suas garras com Laminas
Aprenda a afiar suas garras com Laminas
 
Ciência e software livre: desenvolvendo com método
Ciência e software livre: desenvolvendo com métodoCiência e software livre: desenvolvendo com método
Ciência e software livre: desenvolvendo com método
 
Turbinando microsserviços em PHP
Turbinando microsserviços em PHPTurbinando microsserviços em PHP
Turbinando microsserviços em PHP
 
O que esperar do framework Laminas
O que esperar do framework LaminasO que esperar do framework Laminas
O que esperar do framework Laminas
 
PHP Conference Brazil - What can we expect about framework Laminas?
PHP Conference Brazil - What can we expect about framework Laminas?PHP Conference Brazil - What can we expect about framework Laminas?
PHP Conference Brazil - What can we expect about framework Laminas?
 
Algoritmos Genéticos em PHP - PHP Conference Brasil 2019
Algoritmos Genéticos em PHP - PHP Conference Brasil 2019Algoritmos Genéticos em PHP - PHP Conference Brasil 2019
Algoritmos Genéticos em PHP - PHP Conference Brasil 2019
 
Como se tornar o pior programador PHP do mundo
Como se tornar o pior programador PHP do mundoComo se tornar o pior programador PHP do mundo
Como se tornar o pior programador PHP do mundo
 
A demanda da santa entrega Batman: bugs e gargalos em aplicações PHP
A demanda da santa entrega Batman: bugs e gargalos em aplicações PHPA demanda da santa entrega Batman: bugs e gargalos em aplicações PHP
A demanda da santa entrega Batman: bugs e gargalos em aplicações PHP
 
Comunicação e padrões em código aberto: quando convergente e divergente cooperam
Comunicação e padrões em código aberto: quando convergente e divergente cooperamComunicação e padrões em código aberto: quando convergente e divergente cooperam
Comunicação e padrões em código aberto: quando convergente e divergente cooperam
 
Criação de robôs em PHP para raspagem de dados
Criação de robôs em PHP para raspagem de dadosCriação de robôs em PHP para raspagem de dados
Criação de robôs em PHP para raspagem de dados
 
Amanhecer esmeralda
Amanhecer esmeraldaAmanhecer esmeralda
Amanhecer esmeralda
 
Estudo de Caso: Utilização de PHP no Serviço Federal de Processamento de Dados
Estudo de Caso: Utilização de PHP no Serviço Federal de Processamento de DadosEstudo de Caso: Utilização de PHP no Serviço Federal de Processamento de Dados
Estudo de Caso: Utilização de PHP no Serviço Federal de Processamento de Dados
 
Arquitetura PHP para um mundo orientado a microsserviços
Arquitetura PHP para um mundo orientado a microsserviçosArquitetura PHP para um mundo orientado a microsserviços
Arquitetura PHP para um mundo orientado a microsserviços
 
Semeando Liberdade: Como (e onde) o software livre inclui as pessoas
Semeando Liberdade: Como (e onde) o software livre inclui as pessoasSemeando Liberdade: Como (e onde) o software livre inclui as pessoas
Semeando Liberdade: Como (e onde) o software livre inclui as pessoas
 
O que é programação de computadores
O que é programação de computadoresO que é programação de computadores
O que é programação de computadores
 
Economia em rede (comunidade)
Economia em rede (comunidade)Economia em rede (comunidade)
Economia em rede (comunidade)
 
Aplicações Corporativas em PHP (CRM e ERP)
Aplicações Corporativas em PHP (CRM e ERP)Aplicações Corporativas em PHP (CRM e ERP)
Aplicações Corporativas em PHP (CRM e ERP)
 
Desenvolvimento Orientado a API (e extraindo existentes com PHP)
Desenvolvimento Orientado a API (e extraindo existentes com PHP)Desenvolvimento Orientado a API (e extraindo existentes com PHP)
Desenvolvimento Orientado a API (e extraindo existentes com PHP)
 

Último

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 CalisthenicsDanilo Pinotti
 
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.docx2m Assessoria
 
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.docx2m Assessoria
 
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.docx2m Assessoria
 
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.docx2m Assessoria
 
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 exemploDanilo Pinotti
 

Último (6)

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

Zend framework 3 Hangout 2016

  • 1. Flávio Gomes da Silva Lisboa Zend Certified Engineer Zend Framework 3 www.fgsl.eti.brwww.mcl.srv.br
  • 2. 1)A evolução do Zend Framework PHP 2)Principais características da versão 3 3)O que diferencia o ZF3 de outros frameworks 4)Dicas para começar a utilizar 5)Pré-requisitos 6)Cuidados básicos na implementação 7)Respostas às dúvidas do público Roteiro
  • 3. A evolução do Zend Framework PHP www.fgsl.eti.brwww.mcl.srv.br
  • 4. A evolução do Zend Framework PHP www.fgsl.eti.brwww.mcl.srv.br PHP 5.2
  • 5. A evolução do Zend Framework PHP www.fgsl.eti.brwww.mcl.srv.br
  • 6. A evolução do Zend Framework PHP www.fgsl.eti.brwww.mcl.srv.br
  • 7. A evolução do Zend Framework PHP www.fgsl.eti.brwww.mcl.srv.br 4 de setembro de 2012 Zend Framework 2 PHP 5.3 ZendEventManager ZendServiceManager
  • 8. A evolução do Zend Framework PHP www.fgsl.eti.brwww.mcl.srv.br 1 2
  • 9. A evolução do Zend Framework PHP www.fgsl.eti.brwww.mcl.srv.br Melhoria da consistência e performance; Modularidade obrigatória.
  • 10. A evolução do Zend Framework PHP www.fgsl.eti.brwww.mcl.srv.br
  • 11. Principais características da versão 3 www.fgsl.eti.brwww.mcl.srv.br
  • 12. Principais características da versão 3 www.fgsl.eti.brwww.mcl.srv.br Ênfase em componentes; Foco em HTTP, via PSR-7 e middleware; Otimizado para PHP 7, mas suporta PHP 5.5+
  • 13. Principais características da versão 3: www.fgsl.eti.brwww.mcl.srv.br Matthew Weier O'Phinney A performance aumentou; Nós mensuramos um desempenho 4 vezes superior sob PHP 5, e ainda melhor sob PHP 7
  • 14. Principais características da versão 3: www.fgsl.eti.brwww.mcl.srv.br Rostislav Mykhajliw in http://pt.slideshare.net/fwdays/zend-framework-3-evolution-or-revolution
  • 15. Principais características da versão 3: www.fgsl.eti.brwww.mcl.srv.br http://www.zimuel.it/slides/phpday2015/#/
  • 16. Suporte a PHP 7 Principais características da versão 3 www.fgsl.eti.brwww.mcl.srv.br Performance PHP [requisições/segundo] PHP-5.61 PHP-72 HHVM-3.3.03 Diferença (2 e 3) ZF1 Hello 1150 1655 961 72% ZF2 Test 269 421 260 62% Drupal 194 281 261 8% SugarCRM (login) 132 225 165 36% Magento 43 57 60 -5% Symfony 2.5 ACME 85 110 92 20% https://twitter.com/dextervip
  • 17. Foco em componentes desacoplados. Permite reuso em um grande número de contextos. Em alguns casos, novos pacotes foram criados. Em outros, foi fornecida integração entre múltiplos componentes Principais características da versão 3 www.fgsl.eti.brwww.mcl.srv.br
  • 18. Principais características da versão 3 www.fgsl.eti.brwww.mcl.srv.br
  • 19. Principais características da versão 3 www.fgsl.eti.brwww.mcl.srv.br
  • 20. Foco em documentação. Cada componente tem a sua própria documentação, em seu repositório. Principais características da versão 3 www.fgsl.eti.brwww.mcl.srv.br
  • 21. Principais características da versão 3 www.fgsl.eti.brwww.mcl.srv.br
  • 22. Principais características da versão 3 www.fgsl.eti.brwww.mcl.srv.br
  • 23. Principais características da versão 3 www.fgsl.eti.brwww.mcl.srv.br
  • 24. Principais características da versão 3 www.fgsl.eti.brwww.mcl.srv.br
  • 25. Principais características da versão 3 www.fgsl.eti.brwww.mcl.srv.br
  • 26. Principais características da versão 3 www.fgsl.eti.brwww.mcl.srv.br
  • 27. O que diferencia o ZF3 de outros frameworks www.fgsl.eti.brwww.mcl.srv.br
  • 28. O que diferencia o ZF3 de outros frameworks www.fgsl.eti.brwww.mcl.srv.br
  • 29. O que diferencia o ZF3 de outros frameworks www.fgsl.eti.brwww.mcl.srv.br
  • 30. O que diferencia o ZF3 de outros frameworks www.fgsl.eti.brwww.mcl.srv.br
  • 31. O que diferencia o ZF3 de outros frameworks www.fgsl.eti.brwww.mcl.srv.br
  • 32. Dicas para começar a utilizar www.fgsl.eti.brwww.mcl.srv.br
  • 37. Para começar: Lembre-se de que um framework cuida do que é mais genérico. O específico você sempre terá de fazer. Cuidados básicos na implementação www.fgsl.eti.brwww.mcl.srv.br
  • 38. Para migrar do ZF2 para ZF3: Autoloading: delegado para o Composer; Configuração: foi alterada; Controladores: são injetáveis agora; A classe Module: se juntou às outras; Roteadores: Foram desacoplados. Cuidados básicos na implementação www.fgsl.eti.brwww.mcl.srv.br
  • 39. 1) Peso da aplicação, curva de aprendizado e integração com outras soluções web, exemplo Javascript e JQuery. Respostas às dúvidas do público www.fgsl.eti.brwww.mcl.srv.br
  • 40. R1.1) O desenvolvedor controla o “peso”, pois determina quais componentes quer utilizar. R1.2) A curva de aprendizado depende dos pré- requisitos. R1.3) Não entra em conflito com nenhum produto Javascript. Segue os padrões PHP-FIG. Respostas às dúvidas do público www.fgsl.eti.brwww.mcl.srv.br
  • 41. 2) É recomendável desde já para quem utiliza em algum projeto o Zend Framework 2 já começar a pensar na migração p/ o 3 ou ainda é cedo? Respostas às dúvidas do público www.fgsl.eti.brwww.mcl.srv.br
  • 42. Respostas às dúvidas do público www.fgsl.eti.brwww.mcl.srv.br
  • 43. R2) DEMOROU! Respostas às dúvidas do público www.fgsl.eti.brwww.mcl.srv.br
  • 44. 3) Qual a previsão de implementação do Doctrine com o ZF3? Respostas às dúvidas do público www.fgsl.eti.brwww.mcl.srv.br
  • 45. R3) Zend Framework 3 é produzido pela Zend Technologies. Doctrine é produzido pela Sensio Labs. Respostas às dúvidas do público www.fgsl.eti.brwww.mcl.srv.br https://olegkrivtsov.github.io/using-zend-framework-3- book/html/en/Database_Management_with_Doctrine_ORM/Integrating_Doctrine_ ORM_with_Zend_Framework_3.html
  • 46. 4) Qual a relação atual do ZF3, em se tratando de PSR'S? Respostas às dúvidas do público www.fgsl.eti.brwww.mcl.srv.br
  • 47. Respostas às dúvidas do público www.fgsl.eti.brwww.mcl.srv.br V V V V V
  • 48. 5) ZF3 seria recomendado para projetos pequenos? Ou somente para médios e grandes projetos? Respostas às dúvidas do público www.fgsl.eti.brwww.mcl.srv.br
  • 49. R5) Projetos pequenos podem usar Zend Expressive, que é um componente do Zend Framework 3. Respostas às dúvidas do público www.fgsl.eti.brwww.mcl.srv.br
  • 50. 6) Olá. Utilizei uma vez o zf1 num projeto e gostei bastante mesmo sem ter explorado todas suas funcionalidades. Cheguei a fazer um curso de zf2 mas percebi que muita coisa havia mudado. Gostaria que o palestrante comentasse as principais mudanças, na prática, do zf1 para o zf2 e do zf2 para o zf3. Agradeço desde já. Respostas às dúvidas do público www.fgsl.eti.brwww.mcl.srv.br
  • 51. R6) Do ZF1 para o ZF2, é PHP 5.2 para PHP 5.3 (MUDA PRA CARAMBA). A migração é muito difícil, é mais fácil refazer do zero. Do ZF2 para o ZF3 há menos mudanças estruturais. E algumas mudanças já foram sendo feitas dentro do próprio ZF2. Respostas às dúvidas do público www.fgsl.eti.brwww.mcl.srv.br