Namespaces en PHP6, c'est parti
Par NiKo le vendredi 13 juillet 2007, 11:32 - Dev
- Lien permanent -
16 commentaires -
Tags :
[Via la liste technique de Clever Age]
Ceux qui suivent le développement de PHP6 en scrutant le dépôt CVS ont exulté : la future mouture du langage se voit dotée d'une fonctionnalité très attendue des développeurs : la gestion des espaces de noms (namespaces en anglais.) L'implémentation retenue est celle proposée par Dmitry Stogov.
Mais alors qu'il est encore difficile d'imposer PHP 5 à l'ensemble des hébergeurs et développeurs, combien de temps allons-nous devoir attendre pour déployer des outils utilisant ces alléchantes fonctionnalités de PHP 6 ?










16 commentaires (Ajouter un commentaire)
Sans oublier que PHP4, c'est presque vraiment et définitivement fini :
http://www.php.net/index.php#2007-0...
(ah cette liste technique, quelle efficacité :-P )
Beuh, j'ai pas compris ce que c'est... et ton lien, pointe pas vers des explications
Vais-je rester un triste inculte...
cEd
Yoohoo ! \o/ Heureusement, sinon ça aurait sacrément couillon. J'espère qu'on aura pas a attendre 2015 pour pouvoir utiliser du PHP6 everywhere :/
PHP se rapproche beaucoup beaucoup de Java, je trouve (trop ?). Déjà que PHP5 a donné un bon côté "pro" à PHP, PHP6 va réellement renforcer la chose. Bref, ça promet.
Merci de l'info
@Gilles :
Effectivement, PHP commence un peu trop à se la jouer Java. Ils essayent trop de reprendre son modèle de POO, alors qu'on pourrait faire des choses beaucoup plus sympathiques.
Vu la nature ultra-dynamique de PHP, on pourrait très bien retrouver des fonctionnalités style lambda, closures, etc. (un peu à la JavaScript). Ca serait top.
DecIRC> Les espaces de noms t'évitent concrètement d'avoir par exemple deux classes
Datedans un même projet PHP, ou en tout cas de pouvoir les appeler au sein d'un même projet en les distinguant, ce qui est impossible actuellement. D'où la profusion de noms hyper longs genreDB_DataObject_FormBuilderouZend_Controller_Action.FlorentG> Hum, les closures et les lambdas, à déboguer, c'est pas très cool ; je préfère à titre personnel éviter les langages dynamiques ou trop permissifs (déjà que php...) qui se révèlent souvent super durs à déboguer, surtout dans le contexte de reprise d'un projet existant, par exemple. T'as qu'à voir comment ça peut déjà être galère en PHP avec des
__call()de partout et le typage faible... Après chacun ses préférences et sa rigueur de conception et de documentationPerso pour PHP 6 j'aurais adoré une implémentation native de l'héritage multiple, une option de typage fort activable ou pas et une homogénéisation des noms et signatures de méthodes (avec retro-compatibilité.)
salut
je vous invite à consulter la page de mon blog ou il y a un screencast
http://code34.girafon.org/?2007/07/...
je bosse sur un projet qui s'appelle PMO. Il s'agit d'un ORM développé en php. Je vais publier la version 0.06 durant ce week end. Je suis toujours à la recherche de commentaire quand aux améliorations à apporter à mon projet
Moi je code de moins en moins, mais je suis également impatient de tester la bête
PS : Apéro en septembre?
@code34 : la rapport avec le billet ???
Il n'y en a visiblement pas, ça ressemble à un coup de pub.
Alors que la sortie de PHP6 est prévue en mars 2008, il à été annoncé officielement hier (PHP 4 end of life announcement, http://php.net) que PHP n'était plus tenu à jour par les équipes php, php4 est donc en fin de vie.
70% des hébergement PHP4 vont donc être obligée de migrer vers PHP5 sachant que PHP6 sort en mars 2008 ... moralité PHP6 sera majoritaire en ...2012.
C'est moi où j'ai l'impression que les langages se standardisent petit à petit, surtout au niveau des fonctionnalités ?
Exemple : PHP + full OO + typage fort + namespace + héritage multiple ~= Python
A noter que pour PHP il manque une fonctionnalité (bug?) : accéder à la classe appelante lors d'un appel aux méthodes statiques, lors d'un héritage (et non à la classe mère, dans laquelle a été définie la fonction).
Autre exemple: les itérateurs présents dans Java et Python (je ne sais pas lequel des deux à précéder l'autre) le sont maintenant dans PHP5.
To Nicos et Niko
Juste que j'ai vu qu'il y avait des gens qui semblaient maitriser, donc je me suis dis je vais leur parler de mon projet très orienté OO. C'est tout
code34 : ne le prend pas mal mais évite de te faire de la pub à la volée à gros coups de hors sujet (car ton projet n'a quand même strictement rien à voir avec les namespaces PHP6). C'est pas très classieux, limite lourdingue catégorie "SPAM" et tu passes pour un profiteur. Bref, idéal pour planter ton projet dès le départ. Parles-en autour de toi (e-mail, IM, IRC, discussions avec de vrais gens en live...), prends un nom de domaine, mets en place un site sympa avec trac/svn/sketuveux ou rejoins un collectif de codeurs (comme Shortbrain.org, par exemple) si t'as pas envie de sortir l'artillerie lourde et tu verras, si ton projet est réellement intéressant, il aura très vite du succès. Bonne continuation
Code34: je viens de visionner ton screencast.
Je crois comprendre que ton projet est un ORM sans abstraction de bdd. (si j'ai bien compris)
=> pourquoi refaire la roue ? (cf propel par exemple).
Javases (un autre nico
)
Gilles: je suis d'accord avec toi par rapport aux namespaces, j'ai gaffé :/
To Javases: Il y a énormément de différences mais je ne veux pas en dire plus ici pour ne pas polluer le reste du billet
Nico (et oui encore un ... décidément)
Pour continuer sur la fin de php4, debian unstable ne contient plus de php4. voir la fin de l'annonce de sécurité :
http://www.debian.org/security/2007...
C'est déjà le cas dans Ubuntu Feisty ou Arch Linux par ex.