SlideShare una empresa de Scribd logo
1 de 31
Descargar para leer sin conexión
um tour pelo mundo ágil
Zend Framework 2
desenvolvimento web ágil competente
Por Michael Cardoso | michael@codigointerno.com
Como Aprenderemos
Um passo para cada etapa do caminho
Revisão e
Conceitos
Ferramentas
e Instalação
Prática
Revisão e conceitos
O que precisamos saber antes de ir a caçada
é um framework para:
• Aplicações Web de código aberto
• Fortemente orientado a objetos
(encapsulado)
• Implementado para roda a partir do
PHP 5.3
• O ZF2 foi lançado em 2012
• Modular
• Extensível
• Grande performance
• Seguro
• Possui uma comunidade ativa de
desenvolvimento
• Suportado para grandes aplicações
O Zend Framework 2
O ZF 2 é um framework de alto nível,
possibilitando execução de projetos de
grande escalabilidade e desempenho.
Para isso, a linha de aprendizagem exige um
profissional que se aprimore sempre
usufruindo do seu PowerUser.
O que é preciso
saber para
programar com o
Zend Framework 2?
Lógica de Programação
PHP Orientado Objeto
Namespaces
Conhecimento de um
SGBD
Ferramentas Auxiliares
Namespaces
• O que é?
– Possibilita o agrupamento de Classes, interfaces,
funções e constantes,
– Evita o conflito entre seus nomes, atuando como
um encapsulador para estes itens,
Namespaces
• O que é?
– Seu funcionamento é equivalente ao de diretórios
em sistemas operacionais, onde dois arquivos de
mesmo nome não podem existir em um único
diretório, mas nada impede a existência de dois
arquivos de mesmo nome localizados em
diretórios distintos, este mesmo princípio é
aplicado no PHP através de namespaces.
Namespaces
• Conexao.php
<?php
namespace MeuProjeto;
function connect() {
// Faz a sua conexão com o banco de dados
}
?>
<?php
// Inclui o arquivo com a função
include("conexao.php");
// Chama a função dentro do namespace
MeuProjeto/connect();
?>
• Index.php
Namespaces
• Uso de classe com Namespaces
// Example - Namespace scope
namespace ProjectModel;
class User {}
$var = new User;
// Resultado: ProjectModelUser
// Example - Global scope
class User {}
$var = new User;
// Resultado: User
• Uso de classe sem Namespaces (global)
Namespaces
• Aliasing / Importing
– Uma característica importante ao trabalhar com namespaces é a
possibilidade de importar e atribuir apelidos;
– A palavra-chave use é utilizada para importar classes, interfaces ou
namespaces através de seus nomes;
*não é possível importar funções ou constantes.
– Para adicionar apelidos, utilizamos a palavra-chave as, escolhendo um
nome mais acessível, ou seja, um apelido, existem duas maneiras de
realizar importações:
use ProjectModelUser;
// É o mesmo que: use ProjectModelUser as User;
$var = new User;
// Resultado: ProjectModelUser
Namespaces
• Aliasing / Importing
– O PHP oferece um atalho para realizar múltiplas importações na
mesma linha, onde cada importação é separada através de uma
virgula.
use ProjectModelUser, ProjectModelPost as Article;
$var = new Article;
// Resultado: ProjectModelPost
ArquiteturadoZF2 Entendo o paradigma MVC
Model, View, Controller
Cada um assume sua
tarefa , demando,
respondo e exibindo ao
usuário o resultado do
que foi requisita.
ArquiteturadoZF2 Entendo o paradigma MVC
reusabilidade de código e separação de conceitos
• Model (modelo)
– consiste nos dados da aplicação, regras de negócios, lógica e
funções;
• View (visão)
– pode ser qualquer saída de representação dos dados, como
uma tabela ou um diagrama
• Controller (controlador )
– faz a mediação da entrada, convertendo-a em comandos
para o modelo ou visão
ArquiteturadoZF2 Entendo o paradigma MVC
reusabilidade de código e separação de conceitos
1. Usuário faz uma requisição
clicando em um link, enviando
um formulário, etc.
2. Controller recebe essa requisição.
3. Controller solicita informações ao
Model.
4. Model retorna para o Controller
os dados solicitados.
5. Controller envia informações para
View.
6. View solicita dados ao Model.
7. Model retorna para View os
dados solicitados.
8. A página é exibida para o usuário.
Ferramentas e instalação
O que é preciso e como instalar
WAMP Server
• O que é?
– É usado para instalar rapidamente no computador
os softwares PHP 5, MySQL e Apache,
disponibilizando suporte ao uso de scripts PHP
localmente no Windows.
• Apache
• PHP
• SQLBuddy
• MySQL
• PhpMyadmin
• XDebug
• webGrind
Eclipse
• O que é?
– Eclipse é um IDE para desenvolvimento Java,
porém suporta várias outras linguagens a partir de
plugins como C/C++,PHP,ColdFusion, Python, Scala
e plataforma Android.
– Para desenvolver em Zend PHP, temos que baixar
a perspectiva PHP.
GIT
• O que é?
– É um sistema de controle de versão distribuído e um sistema de
gerenciamento de código fonte, com ênfase em velocidade.
– Foi inicialmente projetado e desenvolvido por Linus Torvalds
para o desenvolvimento do kernel Linux, mas foi adotado por
muitos outros projetos.
– Cada diretório de trabalho do Git é um repositório com um
histórico completo e habilidade total de acompanhamento das
revisões, não dependente de acesso a uma rede ou a um
servidor central.
Composer
• O que é?
– O Composer é um gerenciador de dependências
para o PHP. Com ele você define a lista de
bibliotecas (e versões) das quais o seu projeto
depende, e ele cuida da instalação, organização e
“inclusão”.
“Instalação” do ZF2
• Vamos instalar o Zend
Skeleton
Skeleton?
“Instalação” do ZF2
• Instalando o Zend Skeleton
1. Abra o GitBash
2. Entra na pasta do projeto c:/wamp/www
“Instalação” do ZF2
• Instalando o Zend Skeleton
1. Abra o Executar > cmd
2. Entra na pasta do projeto (cd) c:/wamp/www
Instalação do ZF2
• Instalando o Zend
Skeleton
3. Entre no site:
https://github.com/zen
dframework/ZendSkele
tonApplication
4. Verifique logo abaixo
os procedimentos de
instalação na própria
página do diretório
Opção 2
Instalação do ZF2
• Instalando o Zend Skeleton
5. Após digitar os comandos de clonagem do diretório
essa deve ser a mensagem de retorno “done”.
Instalação do ZF2
• Atualizando dependência do composer no Zend
Skeleton
1. Renomeia a pasta da aplicação para “sinform”
2. Entre dentro da pasta da aplicação via GitBash
-> cd sinform/
3. Digite o comando para atualizar o composer
-> php composer.phar self-update
4. Digite o comando para instalar as atualizações
-> php composer.phar install
* Path do windows
Instalação do ZF2
• Identificando o esqueleto do projeto (Skeleton)
– Acessando o diretório raiz, além dos arquivos do
composer e do autoloader, temos os seguintes
diretórios:
• config: aqui ficam configurações da aplicação como um todo;
• data: local para armazenar os seus arquivos que não fazem
parte do código da aplicação, como diagramas, dumps do
banco de dados;
• module: O diretório onde ficam os módulos de sua aplicação;
• public: o Zend Framework trabalha com FrontController, ou
seja, tudo que você acessar, estará acessando através de um
caminho apenas. As imagens, arquivos CSS e JS entre outros
devem ficar aqui neste diretório;
• vendor: diretório dedicado à bibliotecas de terceiros;
Instalação do ZF2
• Configurando o host no Windows
1. Abra o caminho abaixo no Explorer
c:/windows/system32/drivers/etc
2. Abra o arquivo host com o notepad (Bloco de Notas)
3. Adicione a linha
127.0.0.1 sinform
4. Salve o arquivo e feche
Instalação do ZF2
• Configurando o VirtualHost no Apache (WampS)
1. Ative o rewrite_modulo no apache
2. No arquivo httpd.conf do Apache, descomete a linha:
# Virtual hosts
#Virtual hostsInclude conf/extra/httpd-vhosts.conf
Instalação do ZF2
• Configurando o VirtualHost no Apache (WampS)
3. Abra o arquivo httpd-vhost.conf e insira as seguintes linhas
C:wampbinapacheapache2.4.9conf
4. Reinicie seu servidor web, caso esteja online, e acesso o endereço
http://sinform
<VirtualHost *:80>
ServerName sinform
DocumentRoot C:/wamp/www/sinform/public
SetEnv APPLICATION_ENV "development"
<Directory C:/wamp/www/sinform/public>
DirectoryIndex index.php
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
Instalação do ZF2
Essa é a nossa tela do sucesso!
twitter.com/MichaelHCardoso

Más contenido relacionado

La actualidad más candente

Performance de verdade com Phalcon Framework
Performance de verdade com Phalcon FrameworkPerformance de verdade com Phalcon Framework
Performance de verdade com Phalcon FrameworkJaime Neto
 
Zend Framework 1.11
Zend Framework 1.11Zend Framework 1.11
Zend Framework 1.11Cezar Souza
 
Iniciando com o_zend_framework
Iniciando com o_zend_frameworkIniciando com o_zend_framework
Iniciando com o_zend_frameworkMilton Rodrigues
 
Certificação Zend Framework
Certificação Zend FrameworkCertificação Zend Framework
Certificação Zend FrameworkJaime Neto
 
Segurança em Aplicações Web com PHP
Segurança em Aplicações Web com PHPSegurança em Aplicações Web com PHP
Segurança em Aplicações Web com PHPGedvan Dias
 
Desenvolvimento web ágil com python e web2py
Desenvolvimento web ágil com python e web2pyDesenvolvimento web ágil com python e web2py
Desenvolvimento web ágil com python e web2pyRelsi Maron
 
A arquitetura modular do Java 9
A arquitetura modular do Java 9A arquitetura modular do Java 9
A arquitetura modular do Java 9Helder da Rocha
 
Beyond Ruby with NodeJS - RubyConf Brasil 2010
Beyond Ruby with NodeJS - RubyConf Brasil 2010Beyond Ruby with NodeJS - RubyConf Brasil 2010
Beyond Ruby with NodeJS - RubyConf Brasil 2010Emerson Macedo
 
Modularização via BPL - Abordagem Prática para DataSnap & Front-end
Modularização via BPL - Abordagem Prática para DataSnap & Front-endModularização via BPL - Abordagem Prática para DataSnap & Front-end
Modularização via BPL - Abordagem Prática para DataSnap & Front-endMario Guedes
 
PHP para aplicações Web de grande porte
PHP para aplicações Web  de grande portePHP para aplicações Web  de grande porte
PHP para aplicações Web de grande porteFelipe Ribeiro
 
Migrando 4 milhões de linhas de Delphi 7 para XE7
Migrando 4 milhões de linhas de Delphi 7 para XE7Migrando 4 milhões de linhas de Delphi 7 para XE7
Migrando 4 milhões de linhas de Delphi 7 para XE7José Araújo
 
PHP: Linguagem + Mysql + MVC + AJAX
PHP: Linguagem + Mysql + MVC + AJAX PHP: Linguagem + Mysql + MVC + AJAX
PHP: Linguagem + Mysql + MVC + AJAX Sérgio Souza Costa
 
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 3Flávio Lisboa
 
C# 6.0 - Interopmix 2015
C# 6.0 - Interopmix 2015C# 6.0 - Interopmix 2015
C# 6.0 - Interopmix 2015Renato Groff
 

La actualidad más candente (20)

Performance de verdade com Phalcon Framework
Performance de verdade com Phalcon FrameworkPerformance de verdade com Phalcon Framework
Performance de verdade com Phalcon Framework
 
Zend Framework 1.11
Zend Framework 1.11Zend Framework 1.11
Zend Framework 1.11
 
Iniciando com o_zend_framework
Iniciando com o_zend_frameworkIniciando com o_zend_framework
Iniciando com o_zend_framework
 
Certificação Zend Framework
Certificação Zend FrameworkCertificação Zend Framework
Certificação Zend Framework
 
Segurança em Aplicações Web com PHP
Segurança em Aplicações Web com PHPSegurança em Aplicações Web com PHP
Segurança em Aplicações Web com PHP
 
Desenvolvimento web ágil com python e web2py
Desenvolvimento web ágil com python e web2pyDesenvolvimento web ágil com python e web2py
Desenvolvimento web ágil com python e web2py
 
A arquitetura modular do Java 9
A arquitetura modular do Java 9A arquitetura modular do Java 9
A arquitetura modular do Java 9
 
Beyond Ruby with NodeJS - RubyConf Brasil 2010
Beyond Ruby with NodeJS - RubyConf Brasil 2010Beyond Ruby with NodeJS - RubyConf Brasil 2010
Beyond Ruby with NodeJS - RubyConf Brasil 2010
 
PHP 7
PHP 7PHP 7
PHP 7
 
Modularização via BPL - Abordagem Prática para DataSnap & Front-end
Modularização via BPL - Abordagem Prática para DataSnap & Front-endModularização via BPL - Abordagem Prática para DataSnap & Front-end
Modularização via BPL - Abordagem Prática para DataSnap & Front-end
 
PHP para aplicações Web de grande porte
PHP para aplicações Web  de grande portePHP para aplicações Web  de grande porte
PHP para aplicações Web de grande porte
 
Zephir
ZephirZephir
Zephir
 
Migrando 4 milhões de linhas de Delphi 7 para XE7
Migrando 4 milhões de linhas de Delphi 7 para XE7Migrando 4 milhões de linhas de Delphi 7 para XE7
Migrando 4 milhões de linhas de Delphi 7 para XE7
 
PHP: Linguagem + Mysql + MVC + AJAX
PHP: Linguagem + Mysql + MVC + AJAX PHP: Linguagem + Mysql + MVC + AJAX
PHP: Linguagem + Mysql + MVC + AJAX
 
Frameworks PHP
Frameworks PHPFrameworks PHP
Frameworks PHP
 
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
 
Mean Stack
Mean StackMean Stack
Mean Stack
 
PHP Além da universidade
PHP Além da universidadePHP Além da universidade
PHP Além da universidade
 
Tutorial codeigniter
Tutorial codeigniterTutorial codeigniter
Tutorial codeigniter
 
C# 6.0 - Interopmix 2015
C# 6.0 - Interopmix 2015C# 6.0 - Interopmix 2015
C# 6.0 - Interopmix 2015
 

Similar a Zend Framework 2 - Desenvolvimento Ágil Competente

Open4Education | MC122 - Introdução a ALM OpenSource
Open4Education | MC122 - Introdução a ALM OpenSourceOpen4Education | MC122 - Introdução a ALM OpenSource
Open4Education | MC122 - Introdução a ALM OpenSourcetdc-globalcode
 
ZF Básico - 1. Introdução
ZF Básico - 1. IntroduçãoZF Básico - 1. Introdução
ZF Básico - 1. IntroduçãoMarcos Bezerra
 
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 ZendThiago Sinésio
 
Cakephp - framework de desenvolvimento de aplicações Web em PHP
Cakephp - framework de desenvolvimento de aplicações Web em PHPCakephp - framework de desenvolvimento de aplicações Web em PHP
Cakephp - framework de desenvolvimento de aplicações Web em PHPArlindo Santos
 
ASP.NET vNext no .NET Architects Days 2014
ASP.NET vNext no .NET Architects Days 2014ASP.NET vNext no .NET Architects Days 2014
ASP.NET vNext no .NET Architects Days 2014Giovanni Bassi
 
ALM Open Source Ponta a Ponta - Minicurso Globalcode MC-122
ALM Open Source Ponta a Ponta - Minicurso Globalcode MC-122ALM Open Source Ponta a Ponta - Minicurso Globalcode MC-122
ALM Open Source Ponta a Ponta - Minicurso Globalcode MC-122Bruno Souza
 
Introdução a Application Life-cycle Management Open Source
Introdução a Application Life-cycle Management Open SourceIntrodução a Application Life-cycle Management Open Source
Introdução a Application Life-cycle Management Open SourceGlobalcode
 
Nodejs justdigital
Nodejs justdigitalNodejs justdigital
Nodejs justdigitalJust Digital
 
Desenvolvimento web no Linux
Desenvolvimento web no LinuxDesenvolvimento web no Linux
Desenvolvimento web no LinuxEduardo Rozario
 
Phalcon FrameWork - Considerações Iniciais
Phalcon FrameWork - Considerações IniciaisPhalcon FrameWork - Considerações Iniciais
Phalcon FrameWork - Considerações IniciaisPauloRobertoBolsanel
 
Palestra - Symfony Framework MVC PHP 5
Palestra - Symfony Framework MVC PHP 5Palestra - Symfony Framework MVC PHP 5
Palestra - Symfony Framework MVC PHP 5Lucas Augusto Carvalho
 
CEPUG 2 - Bem-vindo a Framework CodeIgniter
CEPUG 2 - Bem-vindo a Framework CodeIgniterCEPUG 2 - Bem-vindo a Framework CodeIgniter
CEPUG 2 - Bem-vindo a Framework CodeIgniterEric Silva
 
Testes automatizados.pptx
Testes automatizados.pptxTestes automatizados.pptx
Testes automatizados.pptxCarlos Gonzaga
 
Containers com docker #CPRecife4
Containers com docker #CPRecife4Containers com docker #CPRecife4
Containers com docker #CPRecife4David Ruiz
 
Analise frameworks php
Analise frameworks phpAnalise frameworks php
Analise frameworks phpIgor Moura
 
Symfony Live - São Paulo 2019 - Como construir uma API em um passo com API Pl...
Symfony Live - São Paulo 2019 - Como construir uma API em um passo com API Pl...Symfony Live - São Paulo 2019 - Como construir uma API em um passo com API Pl...
Symfony Live - São Paulo 2019 - Como construir uma API em um passo com API Pl...BrunoSouza617
 

Similar a Zend Framework 2 - Desenvolvimento Ágil Competente (20)

Open4Education | MC122 - Introdução a ALM OpenSource
Open4Education | MC122 - Introdução a ALM OpenSourceOpen4Education | MC122 - Introdução a ALM OpenSource
Open4Education | MC122 - Introdução a ALM OpenSource
 
WP Composer
WP ComposerWP Composer
WP Composer
 
ZF Básico - 1. Introdução
ZF Básico - 1. IntroduçãoZF Básico - 1. Introdução
ZF Básico - 1. Introdução
 
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
 
Minicurso Yii2
Minicurso Yii2Minicurso Yii2
Minicurso Yii2
 
Cakephp - framework de desenvolvimento de aplicações Web em PHP
Cakephp - framework de desenvolvimento de aplicações Web em PHPCakephp - framework de desenvolvimento de aplicações Web em PHP
Cakephp - framework de desenvolvimento de aplicações Web em PHP
 
ASP.NET vNext no .NET Architects Days 2014
ASP.NET vNext no .NET Architects Days 2014ASP.NET vNext no .NET Architects Days 2014
ASP.NET vNext no .NET Architects Days 2014
 
ALM Open Source Ponta a Ponta - Minicurso Globalcode MC-122
ALM Open Source Ponta a Ponta - Minicurso Globalcode MC-122ALM Open Source Ponta a Ponta - Minicurso Globalcode MC-122
ALM Open Source Ponta a Ponta - Minicurso Globalcode MC-122
 
Introdução a Application Life-cycle Management Open Source
Introdução a Application Life-cycle Management Open SourceIntrodução a Application Life-cycle Management Open Source
Introdução a Application Life-cycle Management Open Source
 
Nodejs justdigital
Nodejs justdigitalNodejs justdigital
Nodejs justdigital
 
De 0 a DevOps
De 0 a DevOpsDe 0 a DevOps
De 0 a DevOps
 
Alagoas Dev Day
Alagoas Dev DayAlagoas Dev Day
Alagoas Dev Day
 
Desenvolvimento web no Linux
Desenvolvimento web no LinuxDesenvolvimento web no Linux
Desenvolvimento web no Linux
 
Phalcon FrameWork - Considerações Iniciais
Phalcon FrameWork - Considerações IniciaisPhalcon FrameWork - Considerações Iniciais
Phalcon FrameWork - Considerações Iniciais
 
Palestra - Symfony Framework MVC PHP 5
Palestra - Symfony Framework MVC PHP 5Palestra - Symfony Framework MVC PHP 5
Palestra - Symfony Framework MVC PHP 5
 
CEPUG 2 - Bem-vindo a Framework CodeIgniter
CEPUG 2 - Bem-vindo a Framework CodeIgniterCEPUG 2 - Bem-vindo a Framework CodeIgniter
CEPUG 2 - Bem-vindo a Framework CodeIgniter
 
Testes automatizados.pptx
Testes automatizados.pptxTestes automatizados.pptx
Testes automatizados.pptx
 
Containers com docker #CPRecife4
Containers com docker #CPRecife4Containers com docker #CPRecife4
Containers com docker #CPRecife4
 
Analise frameworks php
Analise frameworks phpAnalise frameworks php
Analise frameworks php
 
Symfony Live - São Paulo 2019 - Como construir uma API em um passo com API Pl...
Symfony Live - São Paulo 2019 - Como construir uma API em um passo com API Pl...Symfony Live - São Paulo 2019 - Como construir uma API em um passo com API Pl...
Symfony Live - São Paulo 2019 - Como construir uma API em um passo com API Pl...
 

Zend Framework 2 - Desenvolvimento Ágil Competente

  • 1. um tour pelo mundo ágil Zend Framework 2 desenvolvimento web ágil competente Por Michael Cardoso | michael@codigointerno.com
  • 2. Como Aprenderemos Um passo para cada etapa do caminho Revisão e Conceitos Ferramentas e Instalação Prática
  • 3. Revisão e conceitos O que precisamos saber antes de ir a caçada
  • 4. é um framework para: • Aplicações Web de código aberto • Fortemente orientado a objetos (encapsulado) • Implementado para roda a partir do PHP 5.3 • O ZF2 foi lançado em 2012 • Modular • Extensível • Grande performance • Seguro • Possui uma comunidade ativa de desenvolvimento • Suportado para grandes aplicações O Zend Framework 2
  • 5. O ZF 2 é um framework de alto nível, possibilitando execução de projetos de grande escalabilidade e desempenho. Para isso, a linha de aprendizagem exige um profissional que se aprimore sempre usufruindo do seu PowerUser. O que é preciso saber para programar com o Zend Framework 2? Lógica de Programação PHP Orientado Objeto Namespaces Conhecimento de um SGBD Ferramentas Auxiliares
  • 6. Namespaces • O que é? – Possibilita o agrupamento de Classes, interfaces, funções e constantes, – Evita o conflito entre seus nomes, atuando como um encapsulador para estes itens,
  • 7. Namespaces • O que é? – Seu funcionamento é equivalente ao de diretórios em sistemas operacionais, onde dois arquivos de mesmo nome não podem existir em um único diretório, mas nada impede a existência de dois arquivos de mesmo nome localizados em diretórios distintos, este mesmo princípio é aplicado no PHP através de namespaces.
  • 8. Namespaces • Conexao.php <?php namespace MeuProjeto; function connect() { // Faz a sua conexão com o banco de dados } ?> <?php // Inclui o arquivo com a função include("conexao.php"); // Chama a função dentro do namespace MeuProjeto/connect(); ?> • Index.php
  • 9. Namespaces • Uso de classe com Namespaces // Example - Namespace scope namespace ProjectModel; class User {} $var = new User; // Resultado: ProjectModelUser // Example - Global scope class User {} $var = new User; // Resultado: User • Uso de classe sem Namespaces (global)
  • 10. Namespaces • Aliasing / Importing – Uma característica importante ao trabalhar com namespaces é a possibilidade de importar e atribuir apelidos; – A palavra-chave use é utilizada para importar classes, interfaces ou namespaces através de seus nomes; *não é possível importar funções ou constantes. – Para adicionar apelidos, utilizamos a palavra-chave as, escolhendo um nome mais acessível, ou seja, um apelido, existem duas maneiras de realizar importações: use ProjectModelUser; // É o mesmo que: use ProjectModelUser as User; $var = new User; // Resultado: ProjectModelUser
  • 11. Namespaces • Aliasing / Importing – O PHP oferece um atalho para realizar múltiplas importações na mesma linha, onde cada importação é separada através de uma virgula. use ProjectModelUser, ProjectModelPost as Article; $var = new Article; // Resultado: ProjectModelPost
  • 12. ArquiteturadoZF2 Entendo o paradigma MVC Model, View, Controller Cada um assume sua tarefa , demando, respondo e exibindo ao usuário o resultado do que foi requisita.
  • 13. ArquiteturadoZF2 Entendo o paradigma MVC reusabilidade de código e separação de conceitos • Model (modelo) – consiste nos dados da aplicação, regras de negócios, lógica e funções; • View (visão) – pode ser qualquer saída de representação dos dados, como uma tabela ou um diagrama • Controller (controlador ) – faz a mediação da entrada, convertendo-a em comandos para o modelo ou visão
  • 14. ArquiteturadoZF2 Entendo o paradigma MVC reusabilidade de código e separação de conceitos 1. Usuário faz uma requisição clicando em um link, enviando um formulário, etc. 2. Controller recebe essa requisição. 3. Controller solicita informações ao Model. 4. Model retorna para o Controller os dados solicitados. 5. Controller envia informações para View. 6. View solicita dados ao Model. 7. Model retorna para View os dados solicitados. 8. A página é exibida para o usuário.
  • 15. Ferramentas e instalação O que é preciso e como instalar
  • 16. WAMP Server • O que é? – É usado para instalar rapidamente no computador os softwares PHP 5, MySQL e Apache, disponibilizando suporte ao uso de scripts PHP localmente no Windows. • Apache • PHP • SQLBuddy • MySQL • PhpMyadmin • XDebug • webGrind
  • 17. Eclipse • O que é? – Eclipse é um IDE para desenvolvimento Java, porém suporta várias outras linguagens a partir de plugins como C/C++,PHP,ColdFusion, Python, Scala e plataforma Android. – Para desenvolver em Zend PHP, temos que baixar a perspectiva PHP.
  • 18. GIT • O que é? – É um sistema de controle de versão distribuído e um sistema de gerenciamento de código fonte, com ênfase em velocidade. – Foi inicialmente projetado e desenvolvido por Linus Torvalds para o desenvolvimento do kernel Linux, mas foi adotado por muitos outros projetos. – Cada diretório de trabalho do Git é um repositório com um histórico completo e habilidade total de acompanhamento das revisões, não dependente de acesso a uma rede ou a um servidor central.
  • 19. Composer • O que é? – O Composer é um gerenciador de dependências para o PHP. Com ele você define a lista de bibliotecas (e versões) das quais o seu projeto depende, e ele cuida da instalação, organização e “inclusão”.
  • 20. “Instalação” do ZF2 • Vamos instalar o Zend Skeleton
  • 22. “Instalação” do ZF2 • Instalando o Zend Skeleton 1. Abra o GitBash 2. Entra na pasta do projeto c:/wamp/www
  • 23. “Instalação” do ZF2 • Instalando o Zend Skeleton 1. Abra o Executar > cmd 2. Entra na pasta do projeto (cd) c:/wamp/www
  • 24. Instalação do ZF2 • Instalando o Zend Skeleton 3. Entre no site: https://github.com/zen dframework/ZendSkele tonApplication 4. Verifique logo abaixo os procedimentos de instalação na própria página do diretório Opção 2
  • 25. Instalação do ZF2 • Instalando o Zend Skeleton 5. Após digitar os comandos de clonagem do diretório essa deve ser a mensagem de retorno “done”.
  • 26. Instalação do ZF2 • Atualizando dependência do composer no Zend Skeleton 1. Renomeia a pasta da aplicação para “sinform” 2. Entre dentro da pasta da aplicação via GitBash -> cd sinform/ 3. Digite o comando para atualizar o composer -> php composer.phar self-update 4. Digite o comando para instalar as atualizações -> php composer.phar install * Path do windows
  • 27. Instalação do ZF2 • Identificando o esqueleto do projeto (Skeleton) – Acessando o diretório raiz, além dos arquivos do composer e do autoloader, temos os seguintes diretórios: • config: aqui ficam configurações da aplicação como um todo; • data: local para armazenar os seus arquivos que não fazem parte do código da aplicação, como diagramas, dumps do banco de dados; • module: O diretório onde ficam os módulos de sua aplicação; • public: o Zend Framework trabalha com FrontController, ou seja, tudo que você acessar, estará acessando através de um caminho apenas. As imagens, arquivos CSS e JS entre outros devem ficar aqui neste diretório; • vendor: diretório dedicado à bibliotecas de terceiros;
  • 28. Instalação do ZF2 • Configurando o host no Windows 1. Abra o caminho abaixo no Explorer c:/windows/system32/drivers/etc 2. Abra o arquivo host com o notepad (Bloco de Notas) 3. Adicione a linha 127.0.0.1 sinform 4. Salve o arquivo e feche
  • 29. Instalação do ZF2 • Configurando o VirtualHost no Apache (WampS) 1. Ative o rewrite_modulo no apache 2. No arquivo httpd.conf do Apache, descomete a linha: # Virtual hosts #Virtual hostsInclude conf/extra/httpd-vhosts.conf
  • 30. Instalação do ZF2 • Configurando o VirtualHost no Apache (WampS) 3. Abra o arquivo httpd-vhost.conf e insira as seguintes linhas C:wampbinapacheapache2.4.9conf 4. Reinicie seu servidor web, caso esteja online, e acesso o endereço http://sinform <VirtualHost *:80> ServerName sinform DocumentRoot C:/wamp/www/sinform/public SetEnv APPLICATION_ENV "development" <Directory C:/wamp/www/sinform/public> DirectoryIndex index.php AllowOverride All Order allow,deny Allow from all </Directory> </VirtualHost>
  • 31. Instalação do ZF2 Essa é a nossa tela do sucesso! twitter.com/MichaelHCardoso