News
 
22/11/01

Le moteur Zend 2.0 sera tourné vers l'Objet

Le "Zend engine 1.0" est au coeur de Php4. Repensé et réécrit, ce moteur reste insuffisant au niveau de sa gestion de l'Objet. Zend en est conscient et jette les bases pour sa future version 2.0.
  Envoyer Imprimer  

Même si de nombreuses possibilités existent pour faire de "l'objet" en Php, il reste aujourd'hui à ce langage plusieurs lacunes à combler pour parvenir au niveau d'implémentation Objet d'un langage comme Java par exemple.
Le but ici n'est pas de proposer un système Objet exhaustif mais d'offrir aux développeurs ce dont ils ont besoin, ce qu'ils réclament.

Dans un document de 37 pages au format PDF, téléchargeable sur le site de Zend, les bases de la version 2.0 du "Zend Engine" sont jetées. Encore susceptibles d'évoluer car toujours en discussion, celles-ci laissent tout de même apercevoir un fort intérêt pour l'Objet.

Le principal souhait des développeurs qui s'intéressent aux possibilités Objet du Php concerne l'instanciation et la duplication des objets. Dans sa version actuelle le moteur 1.0 de Zend n'offre pas de solutions satisfaisantes dans ce domaine. Les objets sont en effet trop souvent dupliqués, plutôt que manipulés par un pointeur unique. La version 2.0 du moteur prévoit une approche plus cohérente de la gestion des objets et de leur interaction avec les fonctions.

On note parmi les nouveautés susceptibles d'être adoptées dans cette version 2.0 :

- Le support du déréférencement d'objets retournés par des méthodes.
- Une optimisation du clonage d'objets (possibilité d'obtenir une copie d'un objet sans toutes les propriétés qui lui sont liées).
- Des destructeurs d'objets.
- La possibilité d'effacer un objet même si des références pointent encore sur lui.
- Une standardisation dans la déclaration des constructeurs.
- L'héritage multiple (ce point est cependant controversé dans la liste de discussion car trop complexe et inutile pour certains. Rappelons par exemple que le pourtant récent C# n'implémente pas cette possibilité : il s'agit pour une classe d'hériter de méthodes contenues dans des classes parentes).
- Des variables "private" (là aussi la présence de cette fonctionnalité est remise en cause pour la version 2.0 du moteur).
- Des variables n'appartenant qu'à une seule classe.
- Une gestion des exceptions à base de Try / Throw / Catch, comparable à celle d'un langage comme Java par exemple.
- La surcharge des opérateurs (encore une fois critiquée pour sa complexité).
- Hors du domaine objet, il est évoqué une syntaxe spéciale pour gérer les chaînes de caractères et les distinguer des tableaux.

Même s'il est trop tôt pour évoquer une date de sortie pour cette nouvelle version, il est dit que ces améliorations peuvent être implémentées en quelques mois seulement.
Si vous souhaitez en savoir plus sur ces nouveautés, elles sont évoquées plus en détails dans une "newsletter" dont les archives sont toujours disponibles chez Zend.
A noter également la page principale pour tout ce qui concerne le futur du "Zend Engine".

Enfin on retiendra qu'afin de rendre le développement de Php encore plus libre, Zend a récemment modifié la license de son moteur pour en adopter une de type BSD.


JDN Développeur Envoyer Imprimer Haut de page

Sondage

Adobe parviendra-t-il à percer avec sa nouvelle suite de création Web Edge ?

Tous les sondages