A free and open-source book on ZF3 for beginners

Translation into this language is not yet finished. You can help this project by translating the chapters and contributing your changes.

1.12. Diferenças do Zend Framework 2

Para os leitores que têm uma experiência no Zend Framework 2, nesta seção Temos algumas informações sobre o que mudou no Zend Framework 3.

Abaixo, são apresentadas as principais diferenças técnicas entre ZF2 e ZF3:

1.12.1. Compatibilidade com versões anteriores

ZF3 é a mais nova versão lançada, portanto, a compatibilidade com versões anteriores é preservada na maioria dos casos. Porém se você usou ServiceLocatorAwareInterface terá certo trabalho para fazer a migração do seu código. No ZF3, essa interface foi removida e agora todas as dependências devem ser injetadas por meio de factories. Sendo assim, você terá que criar factories para a maioria de seus controllers, services, view helpers e plugin dos controllers.

1.12.2. Componentes

No ZF2, os componentes foram armazenados em um único repositório GIT. No ZF3, os componentes são armazenados em vários repositórios do GIT, um repositório por componente (por exemplo, zendframework/zend-mvc, zendframework/zend-servicemanager, zendframework/zend-form, etc). Isso permite desenvolver e liberar componentes independentemente um do outro.

Os componentes são ainda mais desacoplados do que antes e têm dependências mínimas uns dos outros. Componente Zend\Mvc foi dividido em vários outros. Por exemplo, a funcionalidade de roteamento foi movida para o novo componente Zend\Router.

Agora é recomendado que você especifique individualmente os componentes dos quais seu aplicativo depende no seu composer.json, embora ainda seja possível depender do pacote zendframework/zendframework, que é um pacote que instala todos componentes disponíveis.

1.12.3. Instalador de Componentes

No ZF3, um plugin especial do Composer foi introduzido, chamado component installer . Que permite instalar componentes como módulos ZF. Ele injeta informações no componente e na configuração do aplicativo Arquivo.

1.12.4. Performance do ServiceManager e EventManager

Os desenvolvedores do ZF3 fizeram um ótimo trabalho melhorando o desempenho dos componentes Zend\ServiceManager e Zend\EventManager. Eles são agora estão muito mais rápidos do que antes. A desvantagem você pode ter certo trabalho para fazer a migração. Para Controllers e Services são recomendados para utilizar um recurso disponivel no PHP 5.5 chamado de ::class. Por exemplo, se anteriormente você registrou seu controller como Application\Controller\Index, agora você vai registrá-lo como IndexController::class. Se anteriormente você registrou nomes de serviço como desejava, recomendamos que faça isso usando ServiceClassName::class. Leia a documentação do componente Mvc para maiores informações.

1.12.5. PSR-4

No ZF2, a estrutura era PSR-0, enquanto no ZF3 é PSR-4. Isso requer alguns(pequenos) trabalhos de migração.

1.12.6. Middleware

Zend acredita que o futuro do PHP está no middleware. "O middleware é, simplesmente, um código entre uma solicitação HTTP de entrada e a resposta HTTP de saída."

1.12.7. Foco na Documentação

Cada componentes contém sua própria documentação. A documentação está agora em um formato melhor e se tornou melhor projetado.


Top