Pratique du développement (épisode 3) : projet et IDE
Troisième d’une série d’articles sur le développement pratique : les avantages de travailler votre projet avec un environnement de développement intégré (IDE) comme PHP Storm. Consultez l’introduction du mois de mars pour savoir à quoi s’attendre.
La gestion du projet et des fichiers à l’aide de PHP Storm
Les environnements de développement intégré (IDE), comme Eclipse, Netbeans, Php Storm et autres, peuvent aider à améliorer la productivité de nos projets. Ils offrent différents niveaux de support des langages comme PHP, JavaScript et HTML avec la mise en évidence de la syntaxe, l’édition, l’inspection, la réingénierie logicielle (refactorisation), les normes de codage pour Joomla, l’extensibilité via des plug-ins et beaucoup plus.
Choisir PHP Storm
Il n’y a pas de "mauvais" choix quand vous choisissez votre IDE, c’est une question de préférence personnelle. Si votre IDE couvre vos besoins et vous vous sentez bien, alors conservez-le !
Après avoir exploré plusieurs options, j’ai trouvé Php Storm qui est disponible sur toutes les plateformes majeures (Windows, Mac OS X et Linux), responsive, convivial et riche en fonctionnalités, couvrant la base de mes besoins de développement. Chaque fois que je parlerai d’IDE dans le cadre de cette série d’articles cela désignera PHP Storm spécifiquement.
Même si PHP Storm est un produit commercial — et vaut bien son prix pour des développeurs commerciaux — il est gratuit pour les "développeurs open source". Si vous contribuez à Joomla, renseignez-vous auprès du "Joomla bug squad" pour obtenir une copie de la clé de licence Joomla. Il est également disponible avec une période d’essai de 30 jours.
Comme avec tous les outils complexes, "il y a plus d’une façon de faire" (there's more than one way to do it), je vais parler de ce que je considère être un moyen générique qui peut être adapté aux besoins spécifiques.
Installation
Téléchargez votre version PHP Storm depuis le site de Jetbrains et suivez la procédure d’installation et vous serez prêt à continuer.
Le projet
Nous commençons par créer un nouveau projet à partir de fichiers existants. Cette création commence au niveau du répertoire et nous utiliserons ##PROJECTS##//local.##DOMAIN##
##PROJECTS##//local.##DOMAIN##/#vcs/extension | /module /www /logs /.idea
Le dossier .idea est créé par PHP Storm, il contient les paramètres du projet.
TOUS les fichiers et dossiers contenus dans le projet choisi sont indexés, contrôlés et sont accessibles à partir de l’IDE pour inspection et édition.
Fichiers du projet
Un IDE fourni un support pour un grand nombre de types de fichiers tels que :
.php, .css / .less / .scss, .xml, .html, .js, .ini
Coloration syntaxique
L’aide la plus simple lors de l’inspection des fichiers vient de la coloration du code source qui permet de souligner, rendre le code plus lisible. Ci-dessus, vous observez une portion de code d’un fichier PHP. Avec le support de langages mixtes : PHP, HTML et CSS.
La coloration syntaxique est aussi pratique pour identifier l’oubli d’une apostrophe par exemple.
Refermer des blocs
On peut réduire un bloc de code à une simple ligne.
Afficher et naviguer
Parce que l’IDE "lit" effectivement le code source, les commentaires et l’interprète, il sera en mesure de vous offrir des informations supplémentaires. En tenant Ctrl et en survolant une méthode par exemple cela affichera les paramètres utilisés. Ctrl — clic sur une méthode ou une variable naviguera dans le fichier source jusqu’à la position exacte.
L’IDE affichera également des méthodes qui sont obsolètes (deprecated), qui risquent d’être supprimées dans une prochaine version
Réingénierie logicielle
Une constante dans le développement, est que, avec le recul, nous ne sommes généralement pas contents de ce nous avons codé. Pour revenir en arrière, nous réalisons une réingénierie logicielle (refactoring), un processus de restructuration du code existant.
PHP Storm est livré avec quelques fonctionnalités étonnantes qui méritent d’être explorées. Par exemple, au lieu d’utiliser "rechercher et remplacer", faites un clic droit sur une variable ou une méthode et sélectionnez "refactor | renommer (rename)".
PHP storm utilisera sa connaissance du code, son interprétation, pour faire un remplacement intelligent, en sélectionnant ce qui doit être renommé ou non.
Support de Joomla
Le projet Joomla a ses propres standards de codage qui aident à assurer à notre code la plus haute qualité et sa facilité de lecture, de débogage et de maintien. PHP storm peut être étendu pour avoir un support spécifique de Joomla dans l’IDE.
Style de code
PHP storm peut reformater tout le code ou une sélection pour avoir une indentation correcte, des espacements, etc. Avec le fichier de configuration spécifique pour Joomla, l’IDE appliquera la norme de Joomla (voir Joomla docs). Pour ajouter le support du style de codage de Joomla, téléchargez le fichier de configuration ici et copiez le fichier Joomla.xml dans /config/codestyles/ du dossier d’installation de PHP storm.
Ouvrez la configuration de PHP Storm (PHP Storm – Settings), via File | Settings et tapez code dans la sélection pour afficher et sélectionner le style de code de Joomla.
Code sniffer
Avoir le bon look de code est une chose, s’assurer que le code est effectivement conforme aux normes de codage Joomla en est une autre. Nous avons besoin d’utiliser un sniffer de code (voir Joomla docs).
Premièrement, configurer l’outil codesniffer avec la documentation de PHP Storm. Maintenant, ouvrez la configuration de PHP Storm (PHP Storm – Settings) via File | Settings et tapez code dans la sélection pour afficher et sélectionnez le style de code de Joomla. Puis référencez l’exécutable de code sniffer pour activer le code sniffer.
##XAMPP_INSTALL##/php/phpcs.bat
Ensuite, nous devons installer le support pour les normes de codage Joomla. Extraire les normes de codage dans :
##XAMPP_INSTALL##/php/pear/PHP/CodeSniffer/Standards/Joomla
ou (pour les utilisateurs avancés) cloner le dépôt GIT à cet emplacement.
Ouvrez la configuration de PHP Storm, et tapez inspec pour afficher et sélectionner le style de code de Joomla.
Et par conséquent, nous sommes maintenant avertis lorsque nous ne respectons pas les normes de codage de Joomla
Contrôle de version, Pre-processing, Building et Tests
Ces sujets sont si importants et complexes qu’ils valent plusieurs articles par eux-mêmes, donc soyez patient jusqu’aux prochains mois.
Some articles published on the Joomla Community Magazine represent the personal opinion or experience of the Author on the specific topic and might not be aligned to the official position of the Joomla Project
By accepting you will be accessing a service provided by a third-party external to https://magazine.joomla.org/
Comments