Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
<?>
Kilderson Sena
Created By GraphiqaStock - Freepik.com
Yii ACADEMY 8 MOTIVOS PARA USAR O Yii2
SOBRE MIM
Ol! Meu nome Kilderson Sena e sou desenvolvedor
PHP desde 2005. Conheci esse maravilhoso framework
em meados de 2009/2010 depois de ter passado por
inmeros outros, como: Zend Framework, CodeIgni-
ter, Symfony e CakePHP. Naquela poca, todos esses
frameworks me satisfaziam em alguns pontos, po-
rm em outros, deixava muito a desejar (s no per-
guntem o que era porque eu no lembro =D).
Depois que eu conheci o Yii, na poca em sua verso 1,
fiquei totalmente apaixonado com o grande ganho de produtividade, sua se-
gurana, arquitetura bem diferenciada e, principalmente, a alta performance!
A partir deste momento comecei a utiliz-lo em todos os meus proje-
tos e indicar para amigos desenvolvedores. Na sua verso 2.x s acentua-
ram-se ainda mais os quesitos apontados acima, me deixando ainda mais
cado por esse framework.
Queria dividir com vocs esses mais de 3 anos de experincia com o
Yii Framework 2.x, mostrando 8 motivos para voc comear a utilizar esse
framework em seus projetos.
Mas ANTES Quero te mostrar onde voc pode me encontrar:
Blog: yiiacademy.com.br
Facebook: facebook.com/kilderson.sena
Canal no Youtube: youtube.com/yiiacademybr
Twitter: @derson_sena
GitHub: dersonsena
Linkedin: Kilderson Sena
Grupo no Telegram: https://t.me/yiibrasil
2
Yii ACADEMY 8 MOTIVOS PARA USAR O Yii2
DEFINIO
Abaixo segue a definio do Yii segundo o site Oficial:
3
Yii ACADEMY 8 MOTIVOS PARA USAR O Yii2
4
Yii ACADEMY 8 MOTIVOS PARA USAR O Yii2
1. FCIL INSTALAO
Voc tem 2 formas de instalar o Yii framework:
1. Fazendo o download do framework direto do site;
2. Instalao via Composer (Extremamente recomendado);
"require": {
...
"bower-asset/nome-do-pacote-bower" : "*",
"npm-asset/nome-do-pacote-npm" : "*",
...
}
5
Yii ACADEMY 8 MOTIVOS PARA USAR O Yii2
http://localhost:8888
Voc deve ver uma pgina com um ttulo bem grande: "Congratulations".
Caso voc no veja a tela acima ou por acaso ocorra algum erro na
pgina, voc deve verificar os pr-requisitos bsicos para uso do Framework.
Para isso basta copiar o arquivo "seu-app/requirements.php" para "seu-app/
web/requirements.php" e abrir no seu navegador:
http://localhost:8888/requirements.php
6
Yii ACADEMY 8 MOTIVOS PARA USAR O Yii2
Este script vai te mostrar uma lista do que a verso do seu PHP precisa
para poder rodar o Yii Framework.
IMPORTANTE: voc deve ter pelo menos a verso PHP 5.4 ou superior
no seu ambiente, porm, o ideal o PHP 7 em sua verso mais recente.
Caso voc queira ver uma instalao do Yii2 com mais detalhes na pr-
tica, assista esse vdeo do meu canal:
7
Yii ACADEMY 8 MOTIVOS PARA USAR O Yii2
Caso voc queira ver ainda mais detalhes sobre a instalao do Yii Fra-
mework, basta entrar na pgina de instalao da documentao oficial:
http://www.yiiframework.com/doc-2.0/guide-start-installation.html
2. DOCUMENTAO
SUPIMPA =)
A Organizao e detalhamento dos componentes, classes, atributos,
mtodos do Yii Framework uma coisa de deixar muitos outros Frameworks
no chinelo. Voc pode acessar a documentao oficial dele no endereo:
http://www.yiiframework.com/doc-2.0
http://www.yiiframework.com/doc-2.0/guide-README.html
8
Yii ACADEMY 8 MOTIVOS PARA USAR O Yii2
3. TUDO AQUI
COMPONENTE
Os Componentes no Yii2 nada mais so do que services locators. Eles
guardam um conjunto de "componentes de aplicao" que fornecem dife-
rentes servios.
Voc pode ver que no arquivo de configurao da aplicao (/seu-app/
config/web.php) voc ter um array dos "componentes registrados" quan-
do a aplicao for iniciada:
$config = [
...
'components' => [
'request' => [...],
'cache' => [...],
'user' => [...],
'errorHandler' => [...],
'mailer' => [...],
'log' => [...],
'db' => [...],
],
...
];
9
Yii ACADEMY 8 MOTIVOS PARA USAR O Yii2
// Formato: \Yii::$app->nome_do_componente
http://www.yiiframework.com/doc-2.0/guide-structure-application-com-
ponents.html
10
Yii ACADEMY 8 MOTIVOS PARA USAR O Yii2
4. BAITA GERADOR DE
CDIGOS: O FAMOSO GII!
O GII uma das vrias extenses oficiais do Yii Framework. Porm esse
aqui a gente tem que d um destaque maior pelo o que ele faz. Esta exten-
so fornece um timo gerador de cdigo. Voc pode usar o Gii para gerar
models, formulrios, mdulos, CRUD's e etc.
Ele fornece uma interface baseada na Web para gerar de forma inte-
rativa o cdigo desejado. Ele tambm fornece uma interface de linha de
comando para desenvolvedores que preferem trabalhar com console.
Veja abaixo a tela inicial dessa extenso:
Quer ver 100% na prtica como funciona o GII? Acessa esse vdeo do
meu canal e veja o tempo que voc vai ganhar utilizando essa extenso no
seu dia-a-dia:
11
Yii ACADEMY 8 MOTIVOS PARA USAR O Yii2
5. UTILIZAO DE
MIGRATIONS
Migrations j no uma novidade no universo de desenvolvimento! O
Yii Framework nativamente traz suporte a migrations.
Durante o desenvolvimento e manuteno de uma aplicao orien-
tado por banco de dados, a estrutura do banco de dados que est sendo
usado evolui bastante assim como o prprio cdigo-fonte. Por exemplo,
uma nova tabela pode ser considerada necessria; a criao de uma nova
coluna; nova chave estrangeira (Foreign Key); Depois que a aplicao en-
viada para produo, pode-se descobrir que um ndice deve ser criado para
melhorar o desempenho da consulta; e por a vai.
O Yii suporta o chamado recurso de Database Migration (migrao de
banco de dados) que permite que voc acompanhe as mudanas do seu banco
de dados, que so controladas por verso juntamente com o cdigo-fonte.
muito fcil escrever/criar migraes no Yii Framework, basta execu-
tar o comando:
m150101_185401_criar_tabela_pessoas.php
12
Yii ACADEMY 8 MOTIVOS PARA USAR O Yii2
<?php
use yii\db\Migration;
}
public function down()
{
echo "m150101_185401_criar_tabela_pessoas
cannot be reverted.\n";
return false;
/*
// Use safeUp/safeDown to run migration code
within a transaction
public function safeUp()
{
}
13
Yii ACADEMY 8 MOTIVOS PARA USAR O Yii2
<?php
use yii\db\Migration;
yii migrate
14
Yii ACADEMY 8 MOTIVOS PARA USAR O Yii2
Migrations no s isso que mostrei no, ainda tem muita coisa a ser
explorado. Caso voc queira se aprofundar ainda mais nesse assunto, basta
acessar o guia oficial na documentao oficial:
http://www.yiiframework.com/doc-2.0/guide-db-migrations.html
15
Yii ACADEMY 8 MOTIVOS PARA USAR O Yii2
Abaixo, vou mostrar algumas consultas que voc pode fazer utilizando
sua maravilhosa ORM:
16
Yii ACADEMY 8 MOTIVOS PARA USAR O Yii2
http://www.yiiframework.com/doc-2.0/guide-db-dao.html
17
Yii ACADEMY 8 MOTIVOS PARA USAR O Yii2
7. WIDGETS NATIVOS
E CUSTOMIZADOS
O Yii Framework dispe de vrios widgets para uso na sua aplicao. Wi-
dgets so blocos de construo reutilizveis usados nas views para criao de
elementos de interface complexas e configurveis de forma orientada a objetos.
Por exemplo, um widget de Datepicker pode gerar um selecionador
de data extravagante que permite aos usurios escolher uma data. Tudo o
que voc precisa fazer apenas inserir o cdigo em uma view dessa forma:
Essa cdigo vai gerar um campo de texto que ao ser dado o foco no
mesmo surgir um Datepicker do JqueryUI, como na imagem abaixo:
18
Yii ACADEMY 8 MOTIVOS PARA USAR O Yii2
J o cdigo abaixo:
<?= yii\jui\Slider::widget([
'clientOptions' => [
'min' => 1,
'max' => 20,
],
]) ?>
<?= yii\jui\AutoComplete::widget([
'name' => 'country',
'clientOptions' => [
'source' => ['USA', 'RUS', 'BRA', 'ARG'],
],
]) ?>
19
Yii ACADEMY 8 MOTIVOS PARA USAR O Yii2
<?php
namespace app\components;
use yii\base\Widget;
use yii\helpers\Html;
<?= app\components\HelloWidget::widget([
'message' => 'Good morning
]) ?>
20
Yii ACADEMY 8 MOTIVOS PARA USAR O Yii2
http://www.yiiframework.com/doc-2.0/guide-structure-widgets.html
8. INMERAS EXTENSES
O widget do Datepicker, que voc viu na seo anterior, e o GII, que voc
viu na seo 4, so duas das muitas extenses oficiais do Yii Framework. O
Yii tem vrias extenses prontas para serem usadas. Extenses boas, total-
mente teis, versteis, muito bem testadas e aprovadas pela comunidade.
Se voc for no site do packagist.org e fazer uma consulta com o termo
"yii2-", voc encontrar centenas de extenses oficiais do framework. Veja a
imagem a seguir:
21
Yii ACADEMY 8 MOTIVOS PARA USAR O Yii2
E como foi visto nas outras sees, caso voc queira criar a sua prpria
extenso, basta seguir o guia oficial:
http://www.yiiframework.com/doc-2.0/guide-structure-extensions.html#-
creating-extensions
22
Yii ACADEMY 8 MOTIVOS PARA USAR O Yii2
CONCLUSO
Espero que eu tenha despertado um interesse em voc ao ter mostra-
do esses 8 motivos para usar o Yii2 em seus projetos! Isso que te mostrei
apenas uma pontinha do Iceberg. Esse Framework tem muita coisa ainda a
te impressionar!
https://dersonsena.typeform.com/to/Z5q3Rr
Muito obrigado a voc pelo seu tempo e pela sua ateno! Espero ter
contribudo com o seu aprendizado e ter deixado voc aguado e curioso.
Um forte abrao!
Kilderson Sena
23
Yii ACADEMY 8 MOTIVOS PARA USAR O Yii2
AGRADECIMENTOS
Gostaria de agradecer a todos que me ajudaram de uma forma
ou de outra. Meus amigos desenvolvedores, a toda a comunidade PHP
e do Yii Framework que me ajudaram e me incentivaram a fazer esse
material, em especial:
E outro cara fora de srio o Felipe Arajo, que fez toda a iden-
tidade visual e diagramao do E-book.
S T U D I O
DE SIG N E E S T R AT G I A
85 99985.7367 85 99975.0340
a Rua 34, 190 - sala 207
elevodigital@gmail.com contato.felipearaujo@gmail.com
| Conj. Stio So Joo | Fortaleza - CE
85 98694 2009 | 85 99975 0340
felipe@studiofelipearaujo.com.br
www.studiofelipearaujo.com.br
24