Configurer netbeans pour les recommandations php psr-2 du framework interoperability group
Lapidation en ligne
Il y a quelques jours j’ai eu besoin d’un coup de main en développement et comme je n’avais pas trop de retours concluants sur les forums j’ai été harceler les copains pour avoir de l’aide, ...à peu près sur la totalité des chans freenode. Après voir posté un petit pastebin qui va bien pour expliquer en détails l’endroit précis ou j’étais coincé, j’ai entendu les gars tousser…
Non, je ne suis pas encore toutes les recommandations PSR !
(mais c'est pas de ma faute chef ! ^^)
Netbeans mon IDE
Mon IDE préféré est Netbeans que je trouve être un excellent IDE, il supporte tout un tas de langues et dispose d’un système de plugins génial et a toujours marché à merveille pour moi si ce n’est qu’on pourrait le trouver un peu mou au démarrage vu qu’il passe en revue tous les projets et que le plugin Emmet, remplaçant de ZenCoding, a merdé un peu au début chez moi mais bon, tout est vite rentré dans l’ordre. Cet IDE a de très bonnes fonctionnalités que j’ado00ore comme le support intégré de Git ou le déploiement de serveurs de dev distants, mais ce que je préfère, c’est la mise en forme automatique du code que je viens de pondre, avec un petit coup de Alt Maj F…C’est magique, en 0.05 sec tout est propre, rien ne dépasse...
Les spécifications PSR-2..
Le problème c’est que dans les spécifications PSR-2 une ligne dit qu’on doit ouvrir ses accolades sur la ligne suivante pour les méthodes et malheureusement j’ai pris l’habitude de les ouvrir juste après la parenthèse fermante de ma déclaration, ce qui m’a valu une lapidation virtuelle par les gourous des normes se trouvant sur le chan^^… J’ai quand même une bonne excuse, mon IDE ne gère pas nativement toutes ces petites préférences, c’est lui qui me colle cette accolade ici ! Au passage je trouve certaines de ces normes tellement subjectives que je ne vois pas trop ce que cela peut faire finalement de normaliser les petites habitudes dans l’écriture du code… Enfin si mais bon, l'esprit de contradiction, tout ca... ^^
Marcher au pas
Néanmoins, comme il est quand même bon de s’aligner sur les bonnes pratiques, même discutables, j’ai cherché à voir si Netbeans pouvait m’aider à normaliser mon code pour suivre les recommandations du PHP Framework Interoperability Group, ex PHP Working Group, qui depuis quelques temps a énormément gagné en visibilité dans le monde des développeurs PHP, grâce notamment à la mise en œuvre de la PSR-0 par composer et au travail de Fabien Potencier (le créateur de Symfony2).
J'ai donc passé quelques temps à essayer de trouver des informations en ligne ou un plugin pour gérer tout ça , et après des mois de recherche (^^), j'ai réussi à trouver quelques informations impressionnantes et tellement évidentes que j’ai pensé que les partager pourrait vous faire gagner quelques précieuses ...minutes.
Tout est déjà la...
Donc en fait, c’est pas trop compliqué, dans les préférences Tools/Options onglet Editor/Formatting se trouve toute la panoplie des réglages possibles et imaginables ; et vu que Netbeans gère très bien la plupart des spécifications PSR-1 et PSR-2 nativement il n’y aura quand même pas beaucoup de choses à revoir si ce n’est l’ouverture des accolades qui doit se trouver sur les lignes suivantes dans mon cas ! (entre autres..)
Pas besoin de capture car à mon avis, vous allez très vite comprendre ce qu’il vous faudra modifier pour être dans les cordes !
Repo Github des normes acceptées : lien
Un bon article sur ce qu'on peut penser de ces normes : Normes PHP : PSR-2… aïe, raté
Un autre point de vue : PSR l’évolution indispensable de PHP
Retour a la liste