Palestra yii2

Post on 16-Apr-2017

188 views 0 download

Transcript of Palestra yii2

$ whois João Bosco

Profissão: Desenvolvedor Backend

Experiência: 6 anos

Empresa: id5 Soluções Web

O que é o Yii2?

Sobre o Yii2Yii e pronunciado “Yee” e é um acronomo para “Yes, it is!” e oferece uma resposta rápida para as perguntas:

É rápido?É seguro?Devo usar no meu próximo projeto?- Yes, it is!Fundado em 2008 o yii é um framework MVC escrito em php5 com o intuito de um desenvolvimento realmente ágil e uma aplicação altamente escalável.Com uma ampla comunidade ativa pelo mundo o Yii tem um dos repositórios mais ativos do github, torando fácil a solução de dúvidas e possíveis problemas.

ComposerComposer é uma ferramenta de gerenciamento de dependências para o PHP que vem ganhando espaço e se tornando cada vez mais indispensável. Com algumas poucas linhas de configurações você define todas as bibliotecas de terceiros ou mesmo suas que deseja/precisa utilizar em seu projeto, o composer encarrega-se de baixá-las e criar um autoloader deixando-as prontas para uso.

Mas, realmente é rápido?

Sim!Testes feitos com os maiores frameworks do mercado mostram que o ORM do Yii2 tem um desempenho acima da grande maioria dos concorrentes, ficando atrás apenas do Phalcon. Essa velocidade se deve ao Lazy Loading, ou seja, as classes são carregadas sob demanda.

Sem instanciar classes sem uso, o Yii2 só carrega o que precisa!

71%Mais rápido comparado ao Laravel.

https://github.com/kenjis/php-orm-benchmark

Desenvolvimento ágil

Como o Yii2 pode me ajudar?

O Yii2 dispõe de várias ferramentas que proporcionam ao desenvolvedor um trabalho realmente eficiente e rápido, seja para desenvolvimento de um protótipo até aplicações mais complexas.

Gerando código rotineiro com Gii

Gii

O Gii é um gerador de código, com uma interface amigável tem como objetivo automatizar a geração de código rotineiro (Models, Controllers, CRUDs).

ExemploA exemplo da geração de model, basta passar o nome da tabela e o Gii gerará o Model com todos os atributos validados tomando como referencia os tipo, tamanho e opcional setado no banco de dados, o Gii ainda nos possibilita:

Gerar relacionamentos

Internacionalizar os Labels

Gerar Labels dos atributos a partir dos comentários do campos na tabela

Versionando mudanças no banco com Migrations

MigrationsCom times de desenvolvimentos cada vez maiores manejar as mudanças no banco de dados se torna cada vez mais complicado, usando migrations podemos gerar arquivos para alterações no banco, podendo assim versionar todas as mudanças, ou seja, quando um desenvolvedor criar uma migration com as alterações no banco os outros irão receber esse arquivo via versionador de código, sincronizando assim todas as mudanças.

Interfaces com

Bootstrap e jQuery UI

Componentes prontos para uma rápida implementação

de interface

Componentes Bootstrap e jQuery UI

O Yii2 incorpora os componentes do Twitter Bootstrap e jQuery UI em Widgets, dispensando a necessidade de reescrever todo o html do componente onde ele for usado, mais uma vez o conceito DRY sendo levado ao pé da letra.

Módulo de Debug

Teste Automatizados com Codeception

Integração total com o Codeception para elaboração testes unitários, funcionais e de aceitação, permitindo ao desenvolvedor manter a integridade da sua aplicação através de testes de testes automatizados.

Application Template: Várias formas para sua aplicação

Basic ApplicationO modelo Basic Application é ideal para a criação rápida de pequenos projetos.

O modelo contém as características básicas, incluindo usuário de login / logout e uma página de contato. Ele inclui todas as configurações comumente usadas que permitem que você se concentrar em adicionar novas funcionalidades em sua aplicação

Advanced Application

Esse modelo de aplicação é indicado para aplicações web complexas e com múltiplas camadas.

O modelo inclui três níveis: front-end, back-end , e console , cada um dos quais é uma aplicação Yii separada.

Agradecimentos Lucas Barros - (LukBarros)

https://github.com/lukBarros

Alexander Makarov - (Samdark) https://github.com/samdark

ContatosEmail: joao@id5.com.br

FB: https://www.facebook.com/boscobass

Github: https://github.com/boscobass