CakePHP Rapid Application Developement EPITA, 22/04/2010
Présentation <ul><li>Guillaume Sautereau, 34 ans
ingénieur Supélec
IRL : Responsable Pôle de Compétence eCommerce chez Smile
« Baker » à ses heures perdues depuis 2007 </li></ul>
Historique du projet <ul><li>Créé par Michal Tatarynowicz en 2005
Inspiré par Ruby on Rails
« convention over configuration »
Placé sous licence MIT
Aujourd'hui, une grande communauté </li></ul>
Principes et acronymes <ul><li>MVC
ORM
DRY
TDD
LOL! </li></ul>
Comment ça marche ? <ul><li>on télécharge le code
on le place quelque part (par exemple pas loin du document root d'un serveur Apache)
on créé une base de données
on lance « bake » et on crée successivement : </li><ul><li>modèles
contrôleurs
vues </li></ul><li>et voilà ! </li></ul>
Une demo ? <ul><li>Allez, une petite démo.
Un petit livre d'or ? </li></ul>
Démo : la base de données <ul>Créons la base de données et une table </ul>CREATE DATABASE  ` guestbook ` ; CREATE   TABLE ...
Démo : créer l'application <ul><li>On lance ensuite l'utilitaire bake en ligne de commande pour créer son application et g...
Création de l'application
Création du fichier de configuration
Ça marche ? <ul><li>On fait pointer un virtual host sur le dossier « webroot » de l'application et on obtient, à l'adresse...
Un modèle On créé un modèle et on définit quelques règles de validation sur ses champs.
Prochain SlideShare
Chargement dans…5
×

Présentation de CakePHP, 22/04/2010

4 784 vues

Publié le

Présentation du framework CakePHP aux étudiants de l'EPITA le 22/04/2010

Publié dans : Technologie
0 commentaire
2 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

Aucun téléchargement
Vues
Nombre de vues
4 784
Sur SlideShare
0
Issues des intégrations
0
Intégrations
271
Actions
Partages
0
Téléchargements
0
Commentaires
0
J’aime
2
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive
  • MVC : inventé par le « Gang of Four ». originellement pour scinder une application en 3 parties : input -&gt; processing -&gt; output Simple Test, test driven development
  • http://www.slideshare.net/valberg/baking-with-cake-php
  • Présentation de CakePHP, 22/04/2010

    1. 1. CakePHP Rapid Application Developement EPITA, 22/04/2010
    2. 2. Présentation <ul><li>Guillaume Sautereau, 34 ans
    3. 3. ingénieur Supélec
    4. 4. IRL : Responsable Pôle de Compétence eCommerce chez Smile
    5. 5. « Baker » à ses heures perdues depuis 2007 </li></ul>
    6. 6. Historique du projet <ul><li>Créé par Michal Tatarynowicz en 2005
    7. 7. Inspiré par Ruby on Rails
    8. 8. « convention over configuration »
    9. 9. Placé sous licence MIT
    10. 10. Aujourd'hui, une grande communauté </li></ul>
    11. 11. Principes et acronymes <ul><li>MVC
    12. 12. ORM
    13. 13. DRY
    14. 14. TDD
    15. 15. LOL! </li></ul>
    16. 16. Comment ça marche ? <ul><li>on télécharge le code
    17. 17. on le place quelque part (par exemple pas loin du document root d'un serveur Apache)
    18. 18. on créé une base de données
    19. 19. on lance « bake » et on crée successivement : </li><ul><li>modèles
    20. 20. contrôleurs
    21. 21. vues </li></ul><li>et voilà ! </li></ul>
    22. 22. Une demo ? <ul><li>Allez, une petite démo.
    23. 23. Un petit livre d'or ? </li></ul>
    24. 24. Démo : la base de données <ul>Créons la base de données et une table </ul>CREATE DATABASE ` guestbook ` ; CREATE TABLE `guestbook` . `guestbooks` ( `id` INT ( 11 ) NOT NULL , `title` VARCHAR ( 50 ) NOT NULL , `message` TEXT NOT NULL , `created` DATETIME NOT NULL , `modified` DATETIME NOT NULL , `email` VARCHAR ( 50 ) NOT NULL , PRIMARY KEY ( `id` ) ) ENGINE = MYISAM
    25. 25. Démo : créer l'application <ul><li>On lance ensuite l'utilitaire bake en ligne de commande pour créer son application et générer la configuration accès à la base de données </li></ul>cake/console/cake bake -app ~/Sites/guestbook
    26. 26. Création de l'application
    27. 27. Création du fichier de configuration
    28. 28. Ça marche ? <ul><li>On fait pointer un virtual host sur le dossier « webroot » de l'application et on obtient, à l'adresse http://localhost/guestbook : </li></ul>
    29. 29. Un modèle On créé un modèle et on définit quelques règles de validation sur ses champs.
    30. 30. Un contrôleur
    31. 31. Des vues
    32. 32. Et voilà le travail ! En se connectant à l'adresse http://localhost/guestbooks/guestbooks/add
    33. 33. Validation sur les champs
    34. 34. Index paginé
    35. 35. Fonctionnalités (1) <ul><li>génération de code et scaffolding
    36. 36. Authentification
    37. 37. ACL
    38. 38. i18n et l10n
    39. 39. gestion du cache
    40. 40. mode console
    41. 41. Formulaire et validation
    42. 42. sécurité </li></ul>
    43. 43. Fonctionnalités (2) <ul><li>DRY = don't repeat yourself </li><ul><li>Behavior pour factoriser du code entre plusieurs modèles
    44. 44. Components pour les contrôleurs
    45. 45. Helpers pour les vues
    46. 46. Plugins pour des « mini applications » </li></ul></ul>
    47. 47. CakePHP, pour qui ? <ul><li>Les gens qui recherchent une certaine simplicité : ça reste du PHP qui ressemble à du PHP
    48. 48. Adapté aux petites applications comme aux grosses applications pas trop complexes
    49. 49. Pas de grosse contrainte en terme de configuration serveur (PHP4 supporté) </li></ul>
    50. 50. Quelques sites : RSSTalker
    51. 51. PlugMyEvent
    52. 52. Almost Musique
    53. 53. Des points faibles ? <ul><li>Un rythme de mise à jour « lent » ?
    54. 54. Des performances en retrait ?
    55. 55. Une documentation limitée ?
    56. 56. Une communauté désorganisée ?
    57. 57. Un framework moins populaire que Symfony ou Zend Framework ?
    58. 58. Un framework moins « professionnel » que Symfony ou Zend Framework ? </li></ul>
    59. 59. Communauté(s) <ul>site officiel : http://www.cakephp.org <ul><li>Site de la communauté française : http://www.cakephp-fr.org/
    60. 60. forum : http://forum.cakephp-fr.org
    61. 61. CakePHP Questions : http://cakeqs.org/fre
    62. 62. http://github.com/cakephp
    63. 63. http://www.formation-cakephp.com/
    64. 64. http://cherryonthe.popnews.com </li></ul></ul>
    65. 65. Roadmap <ul><li>CakePHP 1.2 : sorti en 2008, actuellement en version 1.2.6
    66. 66. CakePHP 1.3 : sortie imminente ! Actuellement en version 1.3RC4
    67. 67. CakePHP 2 : fin du support de PHP 4, compatible uniquement avec PHP 5.2 </li></ul>
    68. 68. Lithium ? <ul><li>CakePHP 1.2, CakePHP 1.3, CakePHP 2, Cake3, ...
    69. 69. Et soudain, c'est le drame : le fork !
    70. 70. Gwoo et Nate Abele, deux anciens membres de la « core team » de CakePHP
    71. 71. Framework compatible uniquement avec PHP 5.3
    72. 72. tire partie de ses avancées : SPL, namespaces, fonctions anonymes...
    73. 73. interopérabilité avec les autres frameworks : PSR-0
    74. 74. pour l'instant : un truc de geeks mais... à suivre ! </li></ul>
    75. 75. Au fait ! <ul><li>Ma société, Smile, recrute !
    76. 76. Si vous cherchez un stage ou un emploi (développement Framework Symfony, Zend Framework, CakePHP, eCommerce avec Magento...), contactez-moi : [email_address]
    77. 77. http://www.smile.fr </li></ul>
    78. 78. Fin <ul><li>Des questions ? </li></ul>

    ×