Successfully reported this slideshow.
Your SlideShare is downloading. ×

Introdução ao framework CakePHP

Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Upcoming SlideShare
Tcc apresentacao1
Tcc apresentacao1
Loading in …3
×

Check these out next

1 of 50 Ad

Introdução ao framework CakePHP

Download to read offline

Slides do minicurso Introdução ao framework CakePHP realizado nos dias 10 e 11 de maio durante o WTISC 2012 na Universidade Federal do Ceará - UFC (Campus Quixadá) por Igor Pimentel

Slides do minicurso Introdução ao framework CakePHP realizado nos dias 10 e 11 de maio durante o WTISC 2012 na Universidade Federal do Ceará - UFC (Campus Quixadá) por Igor Pimentel

Advertisement
Advertisement

More Related Content

Advertisement

Similar to Introdução ao framework CakePHP (20)

Advertisement

Introdução ao framework CakePHP

  1. 1. #WTISC2012
  2. 2. Introdução ao framework CakePHP com Igor Pimentel www.igorpimentel.com
  3. 3. Quem? Igor Pimentel Sistemas de Informação - UFC Notorion - Sites e Sistemas Web @igorpimentel www.igorpimentel.com
  4. 4. Sites Sistemas Web
  5. 5. Agenda 10/MAIO Um pouco de blá.. blá.. blá... Preparando o ambiente Mão na Massa 11/MAIO Mão na Massa Bônus* Considerações Finais
  6. 6. CakePHP - é de comer? *Foto: http://www.flickr.com/photos/koyhoge O que é? CakePHP é um framework PHP, gratuito, de código aberto, para desenvolvimento ágil.
  7. 7. CakePHP - Por que usar? Comunidade ativa e amigável Template flexível e rápido Licensa flexível (MIT) Helpers para HTML e Formulários, JavaScript e até AJAX CRUD integrado para interação com o banco de dados Componentes de Email, Cookies, Segurança, Sessão e manipulação de Scaffold de aplicação requisições Código gerado automáticamente (bake) Controle de Acesso (ACL) Arquitetura MVC Multiplas configurações de cache URLs amigáveis Localização e internacionalização Validação de dados Roda em qualquer servidor web, práticamente sem configuração
  8. 8. <,= % %>"4)%"-$?% CakePHP - Quem usa? @$A4BCB! "##$%&&'(()'*&+',-$! Mais? http://goo.gl/Fg0wp
  9. 9. <,= % %>%?"4%4"%@A%B2C%:0)%4#4D% CakePHP - O que fazer? E$F4GHG! !"#$%&'()*!"#$%$&! '(()*++,-./0'1234/12+! ! !"#$%&'(%#%'%&)*)+&'+'$#",%'-+' ./01+.2'+/'$"-"'"'/)3-"' ! 56.738!93!-:-;<.1!3!692.7! =1(1:>!?@931:>!26)6!3!! /68379;<.1!93!9.:)17.A.8.9693! B)8169!2C8(.)81!/12!A6<<6!93! )<1D<3::1!3!)<3?.3E!96!F1(1! G.(3!2-8(.H.9.126!".%I7&! J11D83!K9L676D3<!3!J11D83! L6):! *Portfólio de Thiago Belém (http://thiagobelem.net)
  10. 10. CakePHP - O que fazer? <,= % %>%?"4%4"%@A%B2C%:0)%4#4D% E$F4GHG! !"#$%&'(')*+%),-! "##$%&&#'($)*+,+*-).(/.)(&! ! !"#$%&$%'()*)$(%$%+$,&'%&$% '-'.#'/$,#01%,0%2"0%&$%3',$".0% ! 01234!5)&! 6+-7'8!,'!.)7#*)8'! ! 9)#):;!(+$+!'!.+8'7,<*-)!,'! ,-:$)7-=-8-,+,'! 1*+,>?@)!A-+!B))C8'!1*+7:8+#'! B))C8'!2+$:! *Portfólio de Thiago Belém (http://thiagobelem.net)
  11. 11. O que é um Framework? Um framework, em desenvolvimento de soft ware, é uma abstração que une códigos comuns entre vários projetos de soft ware provendo uma funcionalidade genérica. (Wikipedia)
  12. 12. Framework Framework != CMS Framework != Padrões de Projeto Framework != IDE Framework != Biblioteca Frameworks facilitam o desenvolvimento, pois ao invés de se fazer tudo na "unha" ou "reinventar a roda" ele provê um conjunto funcionalidade prontas.
  13. 13. MVC MVC == Model-view-controller É um padrão de arquitetura de aplicações que visa separar a lógica da aplicação (Model), da interface do usuário (View) e do fluxo da aplicação (Controller). Permite que a mesma lógica de negócios possa ser acessada e visualizada por várias interfaces. *Fonte: http://www.htmlstaff.org/ver.php?id=4500
  14. 14. Isso é MVC: Model Controller View
  15. 15. MVC em Imagem
  16. 16. MVC em Texto Controllers Os controllers (controladores) manipulam as requisições e ajudam coordenando e preparando as respostas que serão enviadas para o cliente. Views As views (visões) formam a camada de apresentação no CakePHP. Elas geram as saídas para as requisições dos clientes transformando os dados que foram obtidos a partir dos models. Models Os models (modelos) formam o coração de sua aplicação. Tratam das validações, armazenamento e recuperação dos seus dados.
  17. 17. Uma Requisição Típica do CakePHP
  18. 18. Preparando o Ambiente
  19. 19. Preparando o Ambiente WAMP LAMP MAMP
  20. 20. Preparando o Ambiente
  21. 21. Mão na massa... Instalando o XAMPP... Download: http://www.apachefriends.org/pt_br/xampp.html
  22. 22. Testando...
  23. 23. Mão na massa... Instalando o CakePHP... Download: http://cakephp.org
  24. 24. Testando...
  25. 25. Diretórios do /APP
  26. 26. Configurações Alterar o valor de Security.salt em APP/Config/core.php Alterar o valor de Security.cipherSeed em APP/Config/core.php Permissão de escrita no diretório APP/tmp (chmod 777) Configurar banco de dados em APP/Config/database.php
  27. 27. Testando...
  28. 28. Páginas no CakePHP
  29. 29. Páginas no CakePHP APP/View/Pages
  30. 30. Páginas no CakePHP Vamos criar Páginas....
  31. 31. Layouts no CakePHP
  32. 32. Layouts no CakePHP Layout View
  33. 33. Layouts no CakePHP APP/View/Layouts/default.ctp
  34. 34. Layouts no CakePHP <?php echo $title_for_layout ?>
  35. 35. Layouts no CakePHP <?php echo $this->Html->css('style') ?>
  36. 36. Layouts no CakePHP <?php echo $content_for_layout ?>
  37. 37. Helpers <?php echo $this->Html->link( 'programação', array( 'controller' => 'pages', 'action' => 'display', 'programacao' ) ) ?>
  38. 38. Rotas no CakePHP APP/Config/routes.php Router::connect('<formato da url>', array( 'controller' => '<controller>', 'action' => '<action>') );
  39. 39. Bônus* Querem?
  40. 40. Cadastro de Notícias Model Noticia Arquivo: /APP/Model/Noticia.php Nome da Classe: Noticia Tabela no Banco: noticias
  41. 41. Cadastro de Notícias Model Noticia <?php class Noticia extends AppModel{ } ?>
  42. 42. Cadastro de Notícias Controller Noticia Arquivo: /APP/Controller/NoticiasController.php Nome da Classe: NoticiasController
  43. 43. Cadastro de Notícias Controller Noticia <?php class NoticiasController extends AppController { } ?>
  44. 44. Cadastro de Notícias Controller Noticia <?php class NoticiasController extends AppController { var $scaffold; } ?>
  45. 45. Considerações Finais Próximos passos... 1 - Aprenda (de verdade) PHP 2 - http://book.cakephp.org/2.0/pt 3 - Faça Cursos
  46. 46. Agradecimento ESPECIAL!
  47. 47. Referências Wikipedia Cookbook Material pessoal de Thiago Belém (www.thiagobelem.net) (slides 9, 10 e 11)
  48. 48. Slides: http://www.slideshare.net/igorpimentel Código: https:/ /github.com/igorpimentel/Minicurso-CakePHP Mais? @igorpiementel Obrigado!

×