• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Minicurso de Cakephp
 

Minicurso de Cakephp

on

  • 5,274 views

Apresentação utilizada no minicurso de CakePHP apresentado nos eventos:...

Apresentação utilizada no minicurso de CakePHP apresentado nos eventos:
- Latinoware 2009 / COLAPHP ( http://latinoware.org/node/41 )
- 2º Workshop PHPMS ( http://www.phpms.org/workshops/186-2o-workshop-do-phpms );

Statistics

Views

Total Views
5,274
Views on SlideShare
3,255
Embed Views
2,019

Actions

Likes
3
Downloads
101
Comments
0

8 Embeds 2,019

http://cauancabral.net 1554
http://lorindo.com 442
http://coderwall.com 16
http://webcache.googleusercontent.com 3
http://translate.googleusercontent.com 1
http://www.slideshare.net 1
http://www.health.medicbd.com 1
https://www.google.com.br 1
More...

Accessibility

Categories

Upload Details

Uploaded via as OpenOffice

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Minicurso de Cakephp Minicurso de Cakephp Presentation Transcript

    • Conhecendo o CakePHP Introdução ao Framework CakePHP Cauan Cabral
    • O que é CakePHP?
      • Framework PHP gratuito e opensource;
      • Projeto com mais de 4 anos de desenvolvimento;
      • Tem como uma de suas principais características o uso de convenções no lugar de configurações;
    • Algumas características
      • Compatível com as versões do PHP entre 4.x e 5.2.x (release beta com suporte ao 5.3.x já liberado);
      • Framework Orientado a Objetos;
      • Divisão em camadas: MVC;
      • Abstração da camada de persistência: DBO;
      • Mapeamento Objeto Relacional: ORM;
    • Facilidades Oferecidas
      • Implementação de vários recursos utilizados com frequência no desenvolvimento de uma aplicação, alguns deles:
        • Componente para controle de acessos (Auth) e gestão de permissões (Acl);
        • Geração de formulários (FormHelper), código javascript (JavascriptHelper) e ajax (AjaxHelper);
        • Validação de dados embutida;
    • Mais facilidades
      • Geração de código para CRUD (Create, Read, Update, Delete);
      • Internacionalização (i18n) e Localização (l10n) nativamente;
      • Suporte a uma grande variedade de bancos de dados nativamente;
      • Suporte a Cache;
      • Componentes para envio de Email, tratamento de requisições e vários outros;
    • Estrutura
      • Models – Representam as “coisas” de sua aplicação;
        • Behaviors – Adicionam comportamentos aos models;
        • DataSource – Adicionam suporte há uma nova fonte de dados para seus models (ex.: Twitter e Facebook);
    • Estrutura
      • Controllers – Fazem o “meio-de-campo” entre a apresentação (View) e os dados (Model);
        • Components – Adicionam funcionalidades ao controller;
      • Views – É a apresentação dos dados de seu sistema. Pode gerar uma saída em PDF, HTML, JSON...
        • Helpers – Adicionam funcionalidades a view, como para geração de formulários, tabelas...;
      • Vendors – Bibliotecas externas ao framework que podem ser usadas em qualquer parte da aplicação.
    • Convenções
      • Nome de classes:
        • Controllers: MyUsersController;
        • Models: MyUser;
        • Views: MyUserView;
      • Nomes de arquivos:
        • Controllers: my_users_controller.php;
        • Models: my_user.php
        • Views: my_users/underscored_action.ctp
    • Camadas do CakePHP
    • Mãos à massa Vamos iniciar a construção de nossa aplicação utilizando o CakePHP; Esta aplicação se chamará “Pagode” e é um sistema de gestão financeira pessoal.
    • Começando
      • Precisamos fazer o download do CakePHP: http://cakephp.org (baixe a última versão estável);
      • Descompactar o framework dentro da raiz do servidor web;
      • Testar o acesso ao servidor: http://localhost
      • Resolver as pendências citadas pelo framework:
        • Permissão de escrita em /app/tmp;
        • Alterar hash de segurança Security.salt;
        • Configurar banco de dados;
    • Banco de Dados O SQL para nosso banco é: CREATE DATABASE `pagode` ; CREATE TABLE IF NOT EXISTS `pagode`.`bills` ( `id` int(11) NOT NULL auto_increment, `amount` float NOT NULL, `description` varchar(64) collate utf8_unicode_ci NOT NULL, `compensate_at` date NOT NULL, `created` datetime default NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=1 ;
    • Bake – Gerando Código
      • Utilizaremos o Bake para gerar a base de todos os nossos códigos: model, controller e a view;
      • Vamos adicionar o PHP ao PATH do sistema;
      • Para acessar o Bake, abra o terminal (prompt de comando no Windows), navegue até a pasta cakecoreconsole
      • Execute o comando “cake”
    • Bake – Poupando tempo
      • O Bake é capaz de gerar:
        • Models com validação e associações;
        • Controllers que utilizam Components e Helpers, e que implementam as ações “CRUD”;
        • Views para as ações geradas para o item anterior;
      • Ele também nos ajuda:
        • A criar um novo projeto com, replicando a árvore de diretórios necessária;
        • Efetuar as configurações de banco de dados.
    • Tela do Bake no Linux
    • O que acontece ao acessar um endereço?
    • Conclusão
      • O CakePHP nos permite dedicar tempo ao que realmente importa: a lógica de nosso sistema;
      • Ele é compatível com um grande número de servidores (incluindo diferentes versões do PHP e Apache)
      • Desenvolver com CakePHP é fácil e rápido.
    • Contato...
      • Email: [email_address]
      • Blog: http://geek.cauancabral.net
      • MSN: [email_address]
      • Gtalk: [email_address]
      • Twitter: cauancabral
      • IRC @ Freenode: CauanCabral
      • http://linkedin.com/in/cauancabral