Turbinando seu workflow
com CakePHP
Tiago Matos
Tiago Matos
•
•
•
•
•
•
•
•
•
•
•

Iniciei aos 15 anos
Trabalhei em algumas empresas a partir dos 17 anos
6 anos sócio - diretor de projetos (W3CRIAÇÕES)
Bacharel em Design Gráfico (Unifacs)
Analista de Sistema Web (Unifacs)
Home Office por opção
Várias linguagens (Várias não, algumas...)
CakePHP WordPress, OpenCart
,
Blogeiro (new be)
+ Dojo, eventos, encontros...
Baba, PS3, Fifa, CS, etc.
go to business...
CakePHP é um
FRAMEWORK!
Mas o que
são Frameworks?
“Framework é
coisa de preguiçoso!”

Desenvolvedor infeliz!

“Eu desenvolvo tudo na unha
e não reaproveito códigos!”
Outro desenvolvedor infeliz!
Um framework, em desenvolvimento de software, é
uma abstração que une códigos comuns entre
vários projetos, provendo uma funcionalidade
genérica.
Um framework pode atingir uma funcionalidade
específica, por configuração, durante a
programação de uma aplicação. Ao contrário das
bibliotecas, é o framework quem dita o fluxo de
controle da aplicação, chamado de Inversão de
Controle.
Wikipédia
A grosso modo, framework
nada mais é do que um
conjunto de códigos que serve
para facilitar o nosso dia-a-dia.

Ele não faz o
seu trabalho,
mas te ajuda
muuiiiitttooo!
vantagens...
PADRONIZAÇÃO
VELOCIDADE
QUALIDADE
MANUTENÇÃO
COMUNIDADE
SEGURANÇA
desvantagens...
CURVA DE APRENDIZADO
REQUISITOS E DEPENDÊNCIAS
PERFORMANCE E PESO
EVOLUÇÃO
http://www.phpframeworks.com/
http://en.wikipedia.org/wiki/Comparison_of_web_appl
ication_frameworks#PHP_2
POR QUE?
O CakePHP é um framework de PHP grátis, focado
,
no desenvolvimento rápido. É uma estrutura
fundamental para programadores criarem
aplicações web.
Nosso principal objetivo é permitir que você
trabalhe em uma forma estruturada e rápida, sem
perda de flexibilidade.
CakePHP foi criado em abril 2005,
quando um programador polonês
Michael Tatarynowicz escreveu
uma pequena versão de um
framework, inspirada no Ruby on
Rails, para aplicações rápidas em
PHP
.
Esta versão foi chamada de Cake e publicada sob
a licença MIT - Instituto de Tecnologia de
Massachusetts.
Hoje o CakePHP é mantido por desenvolvedores
do mundo inteiro.
Valor estimado: U$ 8.861.569,00
O que o cakePHP tem?
•
•
•
•
•
•
•
•
•

Comunidade ativa e amigável
Licença flexível (MIT)
CRUD integrado
Scaffold de aplicação
Código gerado automaticamente (bake)
Arquitetura MVC
URLs amigáveis
Validação de dados
Template flexível e rápido
O que o cakePHP tem?
• Helpers para AJAX, HTML, Formulários,
JavaScript e muito mais...
• Componentes de Email, Cookies, Segurança,
Sessão
• Controle de Acesso (ACL)
• Gerenciamento de cache
• Localização e internacionalização
• Roda em qualquer servidor web, praticamente
sem configuração
O que eu preciso?
•
•
•
•

PHPOO
Estrutura MVC
Manipulação de array()
Ler a documentação
O que eu preciso?

Apache 2.0+

PHP 5.2.8 +

MySQL 4+
Como funciona?
Model

Controller

View
Como funciona?
Páginas
Banco
de dados

Regra de
Negócio
Estrutura de diretórios
../app/ – Você faz a mágica
../lib/ – O CakePHP faz a mágica
../plugins/ – Plugins para o CakePHP
../vendors/ – Bibliotecas de terceiros
../.htaccess – Apache access file
../index.php – Index do CakePHP
Configurações de
segurança
app/Config/core.php (linha 197)

app/Config/core.php (linha 202)
Configurando DB
app/Config/database.php (linha 197)
a mágica vem agora...
Validação de dados
Sem cakePHP :(
Com cakePHP :)
Relacionamentos
Sem cakePHP :(
Com cakePHP :)
Com cakePHP :)
Com cakePHP :)
o que eu já fiz...
Venebrasil

http://www.venebrasil.com.br
Site para venda de pacotes de
viagens.

• Painel admin
• Seção de dicas e faq
• Orçamento on line
Auto
shopping
itapoan

http://www.autoshoppingitapo
an.com.br
Portal de acervo de veículos
seminovos.

• Painel do lojista e
admin
• Seção de promoções
e detaques
• Busca de veículos
Tiago Matos
http://www.tiagomatos.com
Site do desenvolvedor

• Painel admin
• Seção de blog e
projetos recentes
• Orçamento on line
(breve)
e alguns outros :-)
isso tá chato...
agradecimentos...
Para que as pessoas possam ser
felizes em seus trabalhos, essas
três coisas são necessárias:
1) Elas devem se adequar ao
trabalho;
2) Elas não devem trabalhar demais;
3) Elas devem ter uma sensação de
sucesso neste trabalho.

John Ruskin
Valeu...
/tiagomatosweb
tiagomatosweb
tiago@tiagomatos.com

Turbinando seu workflow com cakePHP