Your SlideShare is downloading. ×

Introdução ao framework CakePHP

1,894

Published on

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

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,894
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
41
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. #WTISC2012
  • 2. Introdução aoframework CakePHP com Igor Pimentel www.igorpimentel.com
  • 3. Quem?Igor Pimentel Sistemas de Informação - UFC Notorion - Sites e Sistemas Web @igorpimentel www.igorpimentel.com
  • 4. Sites Sistemas Web
  • 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. CakePHP - é de comer? *Foto: http://www.flickr.com/photos/koyhogeO que é?CakePHP é um framework PHP, gratuito, de código aberto, para desenvolvimento ágil.
  • 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. <,= % %>"4)%"-$?% CakePHP - Quem usa? @$A4BCB! "##$%&&(()*&+,-$! Mais? http://goo.gl/Fg0wp
  • 9. <,= % %>%?"4%4"%@A%B2C%:0)%4#4D% CakePHP - O que fazer? E$F4GHG! !"#$%&()*!"#$%$&! (()*++,-./01234/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. CakePHP - O que fazer?<,= % %>%?"4%4"%@A%B2C%:0)%4#4D% E$F4GHG! !"#$%&()*+%),-! "##$%&&#($)*+,+*-).(/.)(&! ! !"#$%&$%()*)$(%$%+$,&%&$% -.#/$,#01%,0%2"0%&$%3,$".0% ! 01234!5)&! 6+-78!,!.)7#*)8! ! 9)#):;!(+$+!!.+87,<*-)!,! ,-:$)7-=-8-,+,! 1*+,>?@)!A-+!B))C8!1*+7:8+#! B))C8!2+$:! *Portfólio de Thiago Belém (http://thiagobelem.net)
  • 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. Framework Framework != CMS Framework != Padrões de Projeto Framework != IDE Framework != BibliotecaFrameworks facilitam o desenvolvimento,pois ao invés de se fazer tudo na "unha" ou"reinventar a roda" ele provê um conjuntofuncionalidade prontas.
  • 13. MVC MVC == Model-view-controllerÉ um padrão de arquitetura de aplicações quevisa separar a lógica da aplicação (Model),da interface do usuário (View) e do fluxo daaplicação (Controller). Permite que a mesmalógica de negócios possa ser acessada evisualizada por várias interfaces.*Fonte: http://www.htmlstaff.org/ver.php?id=4500
  • 14. Isso é MVC: ModelController View
  • 15. MVC em Imagem
  • 16. MVC em TextoControllersOs controllers (controladores) manipulam as requisições e ajudam coordenandoe preparando as respostas que serão enviadas para o cliente.ViewsAs views (visões) formam a camada de apresentação no CakePHP. Elas geram assaídas para as requisições dos clientes transformando os dados que foramobtidos a partir dos models.ModelsOs models (modelos) formam o coração de sua aplicação. Tratam das validações,armazenamento e recuperação dos seus dados.
  • 17. Uma Requisição Típica do CakePHP
  • 18. Preparando o Ambiente
  • 19. Preparando o AmbienteWAMP LAMP MAMP
  • 20. Preparando o Ambiente
  • 21. Mão namassa...Instalando o XAMPP...Download:http://www.apachefriends.org/pt_br/xampp.html
  • 22. Testando...
  • 23. Mão namassa...Instalando o CakePHP...Download:http://cakephp.org
  • 24. Testando...
  • 25. Diretórios do /APP
  • 26. ConfiguraçõesAlterar o valor de Security.salt em APP/Config/core.phpAlterar o valor de Security.cipherSeed em APP/Config/core.phpPermissão de escrita no diretório APP/tmp (chmod 777)Configurar banco de dados em APP/Config/database.php
  • 27. Testando...
  • 28. Páginas no CakePHP
  • 29. Páginas no CakePHP APP/View/Pages
  • 30. Páginas no CakePHP Vamos criar Páginas....
  • 31. Layouts no CakePHP
  • 32. Layouts no CakePHP Layout View
  • 33. Layouts no CakePHP APP/View/Layouts/default.ctp
  • 34. Layouts no CakePHP<?php echo $title_for_layout ?>
  • 35. Layouts no CakePHP<?php echo $this->Html->css(style) ?>
  • 36. Layouts no CakePHP<?php echo $content_for_layout ?>
  • 37. Helpers<?phpecho $this->Html->link( programação, array( controller => pages, action => display, programacao ))?>
  • 38. Rotas no CakePHP APP/Config/routes.phpRouter::connect(<formato da url>, array( controller => <controller>, action => <action>));
  • 39. Bônus*Querem?
  • 40. Cadastro de Notícias Model NoticiaArquivo: /APP/Model/Noticia.phpNome da Classe: NoticiaTabela no Banco: noticias
  • 41. Cadastro de Notícias Model Noticia<?phpclass Noticia extends AppModel{}?>
  • 42. Cadastro de Notícias Controller NoticiaArquivo: /APP/Controller/NoticiasController.phpNome da Classe: NoticiasController
  • 43. Cadastro de Notícias Controller Noticia<?phpclass NoticiasController extends AppController {}?>
  • 44. Cadastro de Notícias Controller Noticia<?phpclass NoticiasController extends AppController { var $scaffold;}?>
  • 45. Considerações FinaisPróximos passos...1 - Aprenda (de verdade) PHP2 - http://book.cakephp.org/2.0/pt3 - Faça Cursos
  • 46. Agradecimento ESPECIAL!
  • 47. ReferênciasWikipediaCookbookMaterial pessoal de Thiago Belém (www.thiagobelem.net)(slides 9, 10 e 11)
  • 48. Slides:http://www.slideshare.net/igorpimentelCódigo:https:/ /github.com/igorpimentel/Minicurso-CakePHPMais?@igorpiementel Obrigado!

×