CakePHP 2.0.0 disponible en version finale
Abandon du support de PHP 4 et modernisation du framework

Le , par Idelways, Expert éminent sénior
Le framework de développement Web CakePHP vient de franchir une étape importante de son évolution avec l'arrivée de la version stable 2.0.0.

Avec cette mouture, le framework abandonne son attachement particulier à la branche 4.x de PHP et fait l'impasse sur les versions d'avant PHP 5.2.
Cette décision permet à l'équipe du projet d'épurer et moderniser la base de code du framework, et débarrasser sa documentation des références à répétition aux bâtons de cette version archaïque du langage.

Le framework tire donc profit — sans plus se gêner— des divers apports de PHP 5, comme les exceptions, json_encode, PHP Data Objects et la Standard PHP Library (l'ensemble de classes et interfaces natives introduites avec le modèle-objet plus complet de PHP 5).

Ces fonctionnalités, couplées à l'usage intensif du lazy-loading, améliorent les performances du framework : « même en mode débogage vous allez sentir votre application décoller ».

Cake embrasse aussi la recommandation PSR-0. Il s'agit d'une convention de nommage qui permet de relier les classes aux fichiers qui portent les mêmes noms. Moins de code, moins d'erreurs.

« [Vous] n'avez plus aucune excuse pour modifier les fichiers du Core », peut on lire sur l'annonce de cette version. Le support de l'injection permet en effet aux objets du développeur d'agir comme des librairies CakePHP (composants, assistants et behaviors...)

PHPUnit est désormais le framework de test par défaut en remplacement de SimpleUnit. Le support des bases de données PostgreSQL, SQLite et Microsoft SQL Server a été amélioré.

Cette version coïncide avec la sortie d'un patch pour la branche 1.3.x encore supportée. CakePHP 1.3.1 corrige deux régressions survenues lors du patch précédent.

Télécharger Cake 2.0.0
Consulter sa documentation

Source : site officiel de CakePHP

Et vous ?

Avez-vous utiliser CakePHP ?
Que pensez-vous des nouveautés de cette version ?


Vous avez aimé cette actualité ? Alors partagez-la avec vos amis en cliquant sur les boutons ci-dessous :


 Poster une réponse

Avatar de Alanis Alanis - Membre habitué https://www.developpez.com
le 17/10/2011 à 19:02
Bonne nouvelle
Je pensais que Cake 2 serait une arlésienne, il n'en est rien. Il est peu utilisé en France, par rapport à Symfony et Zend mais à une bonne popularité aux us.

Avis perso, c'est très agréable a utiliser, calquer sur du RoR mais sans besoin d'apprendre un nouveau langage.

Avec la 2 ils ont améliorés les perfs et ont posés de bonne base pour évoluer, good job
Avatar de Grabeuh Grabeuh - Membre confirmé https://www.developpez.com
le 17/10/2011 à 19:53
le framework abandonne son attachement particulier à la branche 4.x de PHP et fait l'impasse sur les versions d'avant PHP 5.2.

Que dire, si ce n'est il était temps : PHP 4 n'est plus maintenu depuis 4 ans.

Et je note cependant que malgré le fait que cet élagage dans le framework ne puisse être que bénéfique, ses développeurs s'attachent à rester fidèles aux versions obsolètes du langage en prenant pour base la version 5.2 de PHP, dont l'arrêt du support par la team PHP était annoncé depuis longtemps et est entré en vigueur en août dernier.
Etait-ce bien judicieux de s'appuyer sur cette version là de PHP, alors que deux gros challengers dans le monde des frameworks ZF et Symfony ont misé sur la version 5.3 comme minimum pour respectivement ZF 2 et Symfony 2 ?
Avatar de stealth35 stealth35 - Expert éminent sénior https://www.developpez.com
le 18/10/2011 à 11:17
comme Grabeuh, je trouve aussi dommage de ne pas s’être concentré sur PHP 5.3, sachant que le support de la 5.2 est terminé depuis plus d'un an.
Avatar de ypicot ypicot - Membre confirmé https://www.developpez.com
le 18/10/2011 à 13:35
Les migrations des différents frameworks se poursuivent...
Je ne pense pas qu'il faille comparer CakePHP et d'autres framework de même catégorie (je pense à CodeIgniter ou Yii) aux mastodontes que sont ZF ou Symfony : ils n'ont ni le même public, ni les mêmes projets.

CodeIgniter a viré le php 4 en janvier, Yii depuis l'origine (il est plus récent), CakePHP le fait "seulement" maintenant... tous tournent sur du 5.2, voire 5.1, en étant compatible (c'est la moindre des choses aujourd'hui) sur du 5.3. A noter que à ma connaissance, sur les 3, seul Yii prévoit de faire du 5.3 pur, avec une version alpha en décembre.

Et je ne serais pas surpris qu'il y ait eu en interne de sérieuses empoignades en interne pour savoir s'il fallait que CakePHP soit du pur 5.3 ou garde un minimum de compatibilité avec du 5.2.

Yvan
Avatar de darrylsite darrylsite - Rédacteur https://www.developpez.com
le 18/10/2011 à 18:17
Citation Envoyé par ypicot  Voir le message
Les migrations des différents frameworks se poursuivent...
Je ne pense pas qu'il faille comparer CakePHP et d'autres framework de même catégorie (je pense à CodeIgniter ou Yii) aux mastodontes que sont ZF ou Symfony : ils n'ont ni le même public, ni les mêmes projets.
Yvan

Je programme avec CakePHP que depuis quelques mois et je le trouve aussi confortable que .NET MVC 2. Je ne parle pas du niveau performance car je n'ai pas encore eu à travailler sur des application à forte charge avec ce framework.

Mais niveau logique, pattern et best practice je le trouve meilleur que symfony 1.4 que je connais que de loin.

Symfony est bien apprécié en France, mais je ne crois pas que ça soit une raison suffisante pour affirmer que l'on ne peut pas le comparer à Symfony.
Avatar de Thes32 Thes32 - Expert confirmé https://www.developpez.com
le 21/10/2011 à 20:39
Salut,
Citation Envoyé par ypicot  Voir le message
Je ne pense pas qu'il faille comparer CakePHP et d'autres framework de même catégorie (je pense à CodeIgniter ou Yii) aux mastodontes que sont ZF ou Symfony : ils n'ont ni le même public, ni les mêmes projets.

@ ypicot Peux tu éclaircir un peu plus ? j'ai toujours regarder cette classe de framework de loin (CakePHP, CodeIgniter, PRADO, Yii) de très loin. Ayant utilisé Symfony 1.4, Symfony 2 et certaines composantes du Zend Framework. Pour quels type de project ? Pour quel public ?
Avatar de Poohminator Poohminator - Candidat au Club https://www.developpez.com
le 21/10/2011 à 22:01
Citation Envoyé par ypicot  Voir le message
Les migrations des différents frameworks se poursuivent...
Je ne pense pas qu'il faille comparer CakePHP et d'autres framework de même catégorie (je pense à CodeIgniter ou Yii) aux mastodontes que sont ZF ou Symfony : ils n'ont ni le même public, ni les mêmes projets.

Hum ? Cake n'est pas dans la catégorie de CI ou Yii. Il est bien plus imposant que ce qu'on pourrait croire. Il dispose d'une ORM et même depuis la v2 de l'ODM de doctrine (MongoDB + Doctrine), de scaffolding, d'une console pour générer du code et une admin. Cake est beaucoup plus proche de RoR (ActiveRecord). Concernant le public ou les projets j'ai pas compris ? En France Sensio labs aurait il tant que ça lavé les cerveaux ? Le site d'addons Mozilla a tourné jusqu'à très récemment sous CakePHP (migration vers Django mi-fin 2010 je crois) si un site avec un tel traffic peut tourner sous cakephp j'aimerais bien savoir quels sont ces fameux projets qui ne sont pas fait pour ?

Cake n'appartient à aucune catégorie, beaucoup plus complet et complexe que CI. Moins que sf ou zend, il y a pas de catégories pour lui, mais si absolument fallait faire des catégories et encore plus depuis la v2 (PSR-0 / ODM doctrine etc...) Cake irait plus du côté des "mastodontes" que des light-frame. Un peu faiblard pour les mastodontes (notamment absence de la 5.3) mais bien plus puissant que CI / Kohana / Fuel et la troupe. Impossible à classer mais l'orientation est clairement d'en faire un "mastodonte".

Citation Envoyé par ypicot  Voir le message
Et je ne serais pas surpris qu'il y ait eu en interne de sérieuses empoignades en interne pour savoir s'il fallait que CakePHP soit du pur 5.3 ou garde un minimum de compatibilité avec du 5.2.

Yvan

Pour avoir eu des retours, oui la communauté et la core team a été très partagée sur le passage ou non à PHP 5.3 mais la nouvelle nomenclature + les nouvelles conventions (CamelCase) sont le signe d'un passage prochain à la version 5.3. Un petit papillon me dit même que ça devrait être prêt pour Cake 3.
Avatar de ypicot ypicot - Membre confirmé https://www.developpez.com
le 22/10/2011 à 19:18
Citation Envoyé par Thes32  Voir le message
ypicot Peux tu éclaircir un peu plus ?

Je parlerai principalement de CodeIgniter, CakePhp et ZF, qui sont ceux que je connais le mieux (le moins mal ? )

La taille est un premier indice :
- CodeIgniter : 1.3 Mo (débarrassé de l'aide en ligne)
- CakePhp : 3,9Mo, c'est à dire 7.5Mo, dont 3.6Mo pour les tests unitaires du framework lui-même (répertoire cake/tests/case) (ce dernier point est à confirmer, il s'agit d'une déduction personnelle)
- ZF : 25,4Mo dans sa version "minimale"

Pas le même public.
En effet, quand on regarde la doc et les tutos :
- CodeIgniter et CakePhp parlent d'objets à utiliser, de façon presque "traditionnelle".
- ZF amène très vite des factory, listener et autres. Un bon diagramme UML accompagne de nombreuses explications.
Un développeur qui ne connait pas les design pattern va être tout de suite largué, alors qu'il pourra s'en sortir beaucoup plus facilement avec CI ou Cake.
Juste à titre d'exemple, compare les tutos sur la pagination pour les trois. Ce n'est pas du tout du même accabit.
D'un autre coté, CI et Cake n'utilisent pas pour les tests le standard du marché, PHPUnit (Cake le fait depuis la toute nouvelle version 2, ce qui le remet largement dans la course). Hors, cet outil est plutôt utilisé par les dev expérimentés, ce qui les fait pencher vers ZF.
Maintenant, il est vrai, comme le rappelle Poohminator, que Cake peut aller assez loin dans la complexité. Mais il a su, à mon avis, garder une certaine simplicité qui le rend accessible (à vérifier avec la v2).

Pas les mêmes projets :
Du fait de son respect strict des design pattern, ZF n'est pas le champion du nombre de pages générées. J'avoue ne pas avoir testé personnellement, mais les applis utilisant ZF ont besoin de serveurs un peu plus costaux (je pense à Magento).
Il est clair qu'on peut utiliser ZF pour un projet léger, mais pour moi cela revient à aller chercher sa baguette avec un Renault Master : c'est possible, mais c'est plus dur à garer et ca consomme davantage. Maintenant, si on n'a que ca sous la main, c'est beaucoup mieux que de tout faire en html pur beurre.

Cela ne signifie pas que l'un est meilleur que l'autre : tout est une question de contexte (voir ma signature)

Yvan
Avatar de spoutbe spoutbe - Nouveau membre du Club https://www.developpez.com
le 26/10/2011 à 21:31
J'utilise CakePHP depuis 2005, j'ai tjs été satisfait des nouvelles versions.

Je surveille aussi l'évolution des autres frameworks, mais pour le moment je reste obstiné par CakePHP car je suis assez productif grâce à toute son automagie sans pour autant manquer de flexibilité.
Avatar de beegees beegees - Membre éprouvé https://www.developpez.com
le 31/12/2011 à 21:28
J'aimerais beaucoup m'y mettre, mais je ne trouve pas un tuto simple qui m'explique comment l'utiliser. C'est dommage car coder tout depuis le début, c'est beaucoup de travail (inutile parfois).
Offres d'emploi IT
Architecte sécurité des systèmes d'information embarqués H/F
Safran - Ile de France - 100 rue de Paris 91300 MASSY
Architecte systèmes études & scientifiques H/F
Safran - Ile de France - Vélizy-Villacoublay (78140)
Chef projet big data - pse flotte H/F
Safran - Ile de France - Évry (91090)

Voir plus d'offres Voir la carte des offres IT
Contacter le responsable de la rubrique Accueil