IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[RFC] Déclaration du type de retour des fonctions


Sujet :

Langage PHP

  1. #1
    Membre émérite

    Profil pro
    Inscrit en
    Mai 2008
    Messages
    1 576
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 1 576
    Points : 2 440
    Points
    2 440
    Par défaut [RFC] Déclaration du type de retour des fonctions
    Décidé suite à une réunion à Paris en 2005, ce vieux serpent de mer refait surface avec un nouveau RFC, c'est-à-dire une soumission au vote pour intégration dans PHP.

    En clair, il s'agirait de permettre la déclaration (facultative) du type retourné par une fonction, une méthode ou un closure.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    function randomArray() : array
    {
    	 return range(1, 20);
    }
    Les avantages sont multiples:
    - c'est la contrepartie du type hinting que nous avons déjà pour les signatures
    Cela évite bien de vérifications pour s'assurer que le type retourné par une méthode ou une fonction est correct. Moins de vérifications égale moins de risque de se tromper.

    - cela empêche qu'une fonction retourne un objet inattendu, ce qui entraîne des bugs difficiles à détecter après.

    - ça facilite la compréhension du code. Qui ne s'est jamais penché sur une méthode en se demandant qu'est-ce qu'elle pouvait bien retourner? Aujourd'hui, on utilise les docblocks pour pallier à ça, mais on sait bien que lorsqu'on doit livrer rapidement, on n'a pas le temps de modifier tous les dockblocks.

    - Bonus: les éditeurs peuvent faire de l'autocomplétion sans docblocks, donc moins de lignes à écrire.

    Le problème c'est que ceux qui votent pour cette intégration sont assez conservateurs, donc il n'est pas dit que ça passe. Reste à espérer que la menace de Hack, l'implémentation PHP de Facebook, qui commence sérieusement à intéresser de plus en plus de développeurs, les pousse dans la bonne voie.

  2. #2
    Expert éminent sénior
    Avatar de rawsrc
    Homme Profil pro
    Dev indep
    Inscrit en
    Mars 2004
    Messages
    6 142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Dev indep

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 142
    Points : 16 545
    Points
    16 545
    Billets dans le blog
    12
    Par défaut
    Personnellement, je suis clairement pour.

    Vu que ce typage restera facultatif, cela ne devrait ps trop défriser les puristes.

    Hack (+HHVM) va méchamment percer le jour où l'interopérabilité avec un script en PHP pur sera totale.
    A fin décembre 2013, les p'tits gars de chez Facebook avaient atteint le taux de 98.58% !!
    C'est presque bon.

    Avec ces évolutions les développeurs issus des autres langages beaucoup plus typés ne seront plus dépaysés.
    Questions performances et vu les problèmes auxquels FB a dû faire face, c'est sacrément stable et véloce.

    A terme cela devrait booster l'utilisation de PHP (sécurité d'un environnement de développement typé, hautes performances nativement, facilité naturelle de prise en main du langage, communauté)

    C'est Zend et son stack autour de Zend Server qui devrait avoir quelques cheveux blancs...

    Bref que du bon pour un futur proche.

  3. #3
    Membre émérite

    Profil pro
    Inscrit en
    Mai 2008
    Messages
    1 576
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 1 576
    Points : 2 440
    Points
    2 440
    Par défaut
    C'est clair que le jour où l'interopérabilité sera totale pour le code existant, on se posera sérieusement la question.

    L'écosystème PHP a vachement progressé depuis 3-4 ans, les mentalités changent, le syndrome Not Invented Here a quasiment disparu. Le problème est que le langage n'a pas réellement suivi. À part les générateurs, PHP 5.5 n'a réellement rien apporté de nouveau pour les développeurs

Discussions similaires

  1. [Système] Retour des fonctions
    Par hair_peace dans le forum Langage
    Réponses: 1
    Dernier message: 30/04/2007, 22h31
  2. Heritage et type de retour des methodes
    Par belfo dans le forum C++
    Réponses: 20
    Dernier message: 23/12/2006, 23h51
  3. reflexion et type de retour des méthodes
    Par money mark dans le forum Langage
    Réponses: 2
    Dernier message: 09/04/2006, 18h46
  4. Réponses: 1
    Dernier message: 25/01/2006, 10h30
  5. Perte de type en retour de fonction
    Par Bebel dans le forum Langage
    Réponses: 8
    Dernier message: 22/12/2005, 12h54

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo