CakePHP : ce framework PHP, c’est du gâteau !
CakePHP, un nom original pour un framework PHP, n’est-ce pas ? Mais terriblement bien choisi ! Cake en anglais, signifie gâteau. Et en effet, ce framework PHP, comparé à d’autres, c’est du gâteau (l’équipe de développement en fait d’ailleurs sa bannière). Avant de vous présenter CakePHP, je vais d’abord définir avec vous ce qu’est un framework.
En informatique, un framework est un espace de travail modulaire. C’est un ensemble de bibliothèques, d’outils et de conventions permettant le développement d’applications. Il fournit suffisamment de briques logicielles et impose suffisamment de rigueur pour pouvoir produire une application aboutie et dont la maintenance est aisée. Ces composants sont organisés pour être utilisés en interaction les uns avec les autres.
Des tentatives de francisation du terme ont été faites. On trouve ainsi parfois les termes cadre d’applications, proposé par l’Office québécois de la langue française ou cadriciel. (source Wikipédia)
Vous l’aurez compris, un framework PHP est un ensemble de conventions, de composants et de fonctionnalités utilisables pour développer des applications logicielles structurées, évolutives et maintenables.
Vous pouvez comparer un framework PHP à un chantier de construction. Le framework, ce sont les briques qui composeront l’édifice que vous allez construire. Il y a beaucoup de briques et, bien entendu, il n’est pas obligatoire de toutes les utiliser. Vous pouvez très bien construire une maison en utilisant seulement quelques briques, ou encore réaliser un palais avec plus de briques. Chaque brique représente une fonctionnalité fournie par le framework, qui une fois assemblée avec d’autres briques (d’autres fonctionnalités), devient une maison (une application).
Pour faire tenir debout cette construction, il y a un ensemble de conventions et de règles de développement imposées par le framework à respecter : c’est le ciment. Sans le framework, cela revient à aller extraire soit même son argile pour aller faire cuire ses propres briques. c’ets beaucoup plus long que d’avoir les briques directement, non ?
Un framework, qu’il soit PHP ou autre, rend les développements plus rapides, plus stables, plus modulaires et plus évolutifs du fait des conventions à respecter. Il limite les égards de début de développements et réduit ainsi les failles de conception des fondements de son application.
Pour en revenir à CakePHP, c’est donc un framework PHP (vous l’aurez compris je pense) relativement simple à prendre en main comparé à certains autres frameworks PHP tels que Zend, Jelix, Prado ou Symfony. En seulement 4 jours, vous pouvez être capable de réaliser une application basique du style blog ou livre d’or. Pour Zend, par exemple, il m’a fallu plusieurs semaines. Et je ne l’utilise plus d’ailleurs …
Les avantages de CakePHP :
- Aucune configuration : configurez la base de données et c’est tout
- Extrêmement simple : c’est du gâteau, c’est écrit …
- Communauté très active et très réactive
- Licence souple : licence MIT (ce que vous développez vous appartient totalement et peut être vendu)
- Framework sain : tout le code a été écrit par l’équipe de développement de CakePHP
- Respecte les bonnes pratiques : sécurité, sessions, authentification et bien d’autres encore
- MVC
- Hiérarchisation des données en base de données suivant la structure MPTT
- Orienté Objet (OO) : débutant ou confirmé en développement objet, pas de problèmes !
- Documentation fournie et partiellement traduite en français
- Des tutoriaux
- Gestion de cache, de droits
- Outils intégrés d’aide au développement (formulaires, ajax, validation des données, authentification …)
- Console en ligne de commande permettant la génération d’application CRUD (Create/Read/Update/Delete, Scaffholding) à la volée
- et bien d’autres encore !
Que vous dire d’autres à part d’aller faire un tour sur le site de CakePHP et de vous faire vous-mêmes une idée précise de la chose ?
Pour ma part, je vais commencer à développer quelques petits projets avec, histoire d’enrichir un peu l’univers d’Arcana Scientis qui se limite pour le moment à un blog. Mais d’ici là, surprise !
J’écrirais plusieurs tutoriaux au fil de mes développements avec CakePHP afin de vous permettre de bien prendre en main ce framework et de réaliser vous aussi vos applications PHP avec CakePHP.
Quelques liens :
- Le site officiel : http://cakephp.org/
- La page de téléchargement :
- La documentation officielle : http://book.cakephp.org/fr


Ca fait un peu propagande quand même un billet comme ça, si ce n’est la métaphore du framework
Surtout que si j’ai bien suivi tu n’avances que les arguments que le site officiel reprend lui même (la traduction à ta charge c’est vrai).
Bref j’étais venu chercher un peu de retour d’expérience sur Cake, je repars un peu déçu.