Nesta apresentação é mostrado um as principais características dos principais Frameworks PHP, com uma ênfase maior ao CakePHP.
Size: 2.18 MB
Language: pt
Added: May 21, 2010
Slides: 39 pages
Slide Content
Análise de
Frameworks PHP
Adão F C Gonçalves [email protected]
Analista de Sistemas
Fontes de informações
Podcasts
Artigos on-line
Palestras on-line
TÓPICOS
•Principais Frameworks PHP
•Características
•Um mais sobre o CakePHP.
•Cookbookdo CakePHP
•Possíveis desvantagens?
•Padrão de Arquitetura MVC
•Estrutura funcional
•Estrutura de arquivos
•Convenções
•Aplicação de Exemplos
•SEGURANÇA –Componentes Principais
•CRUD via Scaffolding
•CRUD via BAKE
•Requisitos
•CONCLUSÕES
•REFERENCIAS
Principais Frameworks PHP
Características comuns
•Fácil Instalação
•Agilizar o desenvolvimento
•Geradores de código
•Conceitos RubyonRails(CakePHPe Symfony)
•Componente de segurança: ACL, Authe etc
•Gerencimantode Cache
•Padrão de arquitetura MVC
•Padrão de projeto OHM (Dados->Classe->Objeto)
•Documentação e Comunidades ativas
Curva de aprendizagem
CakePHPe CodeIgnitersão mais focados na simplicidade e
oferecem menor curva de aprendizagem. Destes o CakePHP
é o mais “robusto”.
http://www.cakephp.com.br/pages/features
CakePHPé gratuito, de código aberto, um framework em PHP para
desenvolvimento ágil. Possibilita aos programadores de todos os
níveis desenvolverem aplicações web robustas rapidamente.
Um pouco mais sobre o CakePHP
CakePHP
Por que usar o CakePHP?
•Porque é um verdadeiro padrão de projeto (design
pattern) e torna fácil a manutenção da sua aplicação,
com pacotes modulares de rápido desenvolvimento.
•A divisão em camadas (models , viewse controllers) faz
com que sua aplicação fique leve e independente.
•Usa a técnica ORM (Mapeamento objeto-relacional).
Usa convenção ao invés de configuração.
http://book.cakephp.org/pt/toc/3/Manual
Sumário completo do Cookbookdo CakePHP
CakePHP
CERTIFICAÇÃO
CakePHP
Possíveis desvantagens?
•Requer uma quantidade maior de tempo para
analisar e modelar o sistema;
CakePHP
Padrão de Arquitetura MVC
CakePHP
Estrutura funcional
CakePHP
Estrutura de arquivos
CakePHP
Convenções
MODEL
•Nome da tabela SEMPRE no plural (ex.: modelpost-> tabela posts)
•Toda ta
bela deve possuir a chave primária id (auto-numérica ou com 36
caracteres)
CONTROLLER
•Nome SEMPRE no plural (ex.: modelpost-> controllerposts)
•Nome do arquivo no padrão <model no plural>_controller .php
CakePHP
Exemplos –configurar batabase
CakePHP
Exemplos –Tabela no database
CakePHP
Exemplos –Criar o modelo
CakePHP
Exemplos –Criar a classe Controller
CakePHP
Exemplos –Criar o(s) view
CakePHP
Exemplos –Acesse a app
CakePHP
Exemplos –...
CakePHP
Exemplos –Adicionando ações
CakePHP
Exemplos –Adicionando viewà ação
CakePHP
Exemplos –Acessando a nova ação
CakePHP
Exemplos –Acessando a nova ação
CakePHP
Exemplos –Adicionando um post
CakePHP
Exemplos –Adicionando um post
CakePHP
Exemplos –Adicionando um post
CakePHP
Exemplos –Validação dos dados
CakePHP
Exemplos –Validação dos dados
CakePHP
SEGURANÇA –ACL
ACL –O ACL (Lista de Controle de Acesso) é um componente nativo que
fornece controle de acesso aos dados.
CakePHP
SEGURANÇA –Componente Auth
Auth- O Ault(Autenticação) é um componente que controla o acesso de usuários
ao sistema web. Combinado com ACL, cria um complexo sistema de segurança.
CakePHP
SEGURANÇA –Componente Security
Security– Um componente que permite ajustar maior controle à autenticação de
HTTP.
CakePHP
CRUD via Scaffolding
Vantagens
•Ótimo pra prototiparaplicações
•Pode ser usado em aplicações em produção
Desvantagens
•Não foi feito para ser flexível
•Baixa segurança (em seu estado default)
CakePHP
CRUD via BAKE
CakePHP
CRUD via BAKE
Vantagens
•Cria “esqueletos” de models, viewse controllers
•Ao contrário do scaffold, cria arquivos reais na app
•Permite configurar os modelos
Desvantagens
•Acostuma mal!
•O código pode não coincidir com CodeStandardda
equipe.
CakePHP
Requisitos
•Servidor HTTP (ex.: Apache com mod_rewrite);
•PHP 4.3.2 ou superior;
•Banco de dados. Oferece suporte para:
•MySQL(4 ou superior);
•PostgreSQL;
•FirebirdDB2;
•Microsoft SQL Server;
•Oracle;
•SQLife;
•ODBC; e
•
ADOdb.
CakePHP
CONCLUSÕES
•O uso de qualquer um desses Frameworks,
aumenta a produtividade.
•Nesta apresentação foi dado um enfoque
maior ao CakePHP , principalmente pelo:
•Suporta à grandes aplicações
•Baixa curva de aprendizagem
•Ferramentas de prototipaçãopoderosas
(bake/scaffold)
•Arquitetura consistente e flexível
•Helpersajudam “um bocado”
•Codificação limpa, correta e sustentável
CakePHP
REFERENCIAS
O’BRIEN, Duane. Elabore web sites rapidamente com CakePHP:
•http://www.ibm.com/developerworks/br/library/os- php-cake1/
•http://www.ibm.com/developerworks/br/library/os- php-cake2/
•http://www.ibm.com/developerworks/br/library/os- php-cake3/
•http://www.ibm.com/developerworks/br/library/os- php-cake4/
•http://www.ibm.com/developerworks/br/library/os- php-cake5/
Artigos:
•HACKIN, Léo. Aprendendo a fazer um primeiro bolo.
http://www.leohachin.com.br/blog.
•LOPES, Laura. CakePHPTutorial. http://www.slideshare.net/lauralopes/cake-php-
2356380
•Manual oficial do CakePHP. http://book.cakephp.org/pt
•ALBUQUERQUE, Márcio; THOMAS, Leonardo; CURI, Marcelo; FRANCO, Sandro. Palestra
FrameWARksPHP. http://vimeo.com/8859258