Pratique du développement (épisode 1)

Written by | 28 February 2014 | Published in 2014 March
Que vous écriviez du code PHP ou stylisiez un site Web avec les feuilles de style en cascade (CSS), il existe une gamme d'outils qui peuvent vous rendre la vie beaucoup plus facile et qui vous permettront de vous concentrer sur l'écriture d’un code de bonne qualité rapidement et efficacement. Cette série d'articles “pratique du développement” se concentrera sur l'utilisation de PhpStorm comme environnement de développement et examinera sept sujets.
Pratique du développement (épisode 1) Marco Dings

Il y a plusieurs façons de le faire (TIMTOWTDI*)

Je ne dis pas que ce que je propose dans ces articles soit la meilleure – ou la seule – façon de travailler. Je vous décris ma propre expérience, la façon dont je procède actuellement et comment nous le faisons au travail.

L'information est testée en premier lieu sur l'environnement Windows, mais elle doit être possible sur tous les OS. Ces pratiques devraient ainsi être applicables à Windows, Linux ou Mac. Vous pouvez choisir les méthodes qui vous conviennent et je souhaite recevoir des suggestions pour d'autres IDE ou plates-formes que vous trouvez utile.

Thèmes

Chaque thème illustrera un aspect du développement de logiciels comme décrit ci-dessous et sera un article mensuel publié dans le Joomla Community Magazine (JCM).

Mise en place

Configuration de votre environnement de travail et des outils

vg swdev 0000 setupDéfinir l’arborescence avec des “répertoires de projet” ce qui vous permettra d’avoir de multiples projets / sites dans votre flux de travail. Un répertoire de projet sera le lieu central pour toutes les données liées à un projet, le rendant facile à archiver ou à transférer sur un autre système. Utiliser des liens symboliques (également sous ​​windows !) pour les fichiers et répertoires rend la création de fichiers à l'extérieur du répertoire “projet” disponible dans celui-ci. Un lien permet à plusieurs endroits d’accéder au même fichier.

Projet

Gérer et publier vos fichiers, appliquer le codage et le style

vg swdev 0001 projectLes environnements de développement intégrés (IDE's) comme Eclipse, Netbeans, PhpStorm ou autres peuvent aider à améliorer votre productivité. Ils offrent différents niveaux de support pour des langages comme PHP, JavaScript et HTML en ce qui concerne la coloration syntaxique, l’édition, l'inspection, la refactorisation, les normes de codage de Joomla!. Ils sont extensibles avec des plugins et offrent beaucoup plus encore (aide, manuels…). En fin de compte, c'est un choix personnel. Personnellement, j’utilise l’IDE PhpStorm.

Styliser

CSS et l'utilisation de CSS avec des préprocesseurs

vg swdev 0002 stylingStyliser un site en utilisant les CSS est un principe de base de la conception Web. Bien qu'ils soient puissants, les CSS ont fait un long chemin depuis qu'ils ont été introduits. Différentes techniques ont été empruntées à d'autres langages de programmation pour améliorer ce dont ils sont capables. Au cours des dernières années, nous avons constaté le développement de «pré-processeurs» telle que “Syntactically Awesome Style Sheets” (SASS) et “Leaner CSS” (LESS). Chacun a ses propres forces et faiblesses qui évoluent – et chacun produisent des CSS normalisés. Pour appréhender toutes les fonctionnalités en constante évolution des pré-processeurs, vous ne devriez pas compter sur le support intégré dans les templates, mais utiliser votre IDE pour faire le pré-traitement.

Déboguage

Voir ce qui se passe dans le code

vg swdev 0003 debuggingL’amélioration de la documentation de Joomla! ces dernières années a été épique ! Cependant être capable de voir ce qui se passe en temps réel dans votre code (Javascript ou PHP) est, malgré tout, une fonction très utile et il faut se donner la peine de prendre du temps pour la mettre en place à la fois en local (PC ou Mac) et à distance (vous avez le développement sur le serveur de production). Le débogueur vous permet d'arrêter un script à des points spécifiques dans le code, inspecter et modifier des variables, le tout sans apporter des modifications au code source lui-même. Pensez à Firebug ou aux outils de développement  (developer tools) pour le codage.

Le contrôle de version

Gérer les changements, revenir en arrière, contribuer

vg swdev 0004 version-controlUn système de contrôle de versions ou de révisions (VCS – Revision control system) est le meilleur ami du développeur de logiciels professionnels depuis des décennies. Les outils que vous pouvez choisir comme CVS, Subversion, GIT ont changé au fil du temps. En ce moment, probablement le VCS le plus couramment utilisé dans le monde de l'Open Source (et utilisé par la communauté Joomla!) est GIT.

Un IDE peut vous aider dans les tâches de base des VCS, la création de branches pour des issues ou des fonctionnalités supplémentaires et sauvegarder des changements (intermédiaires) en les annotant. Vous pouvez même l'utiliser pour contribuer aux tests de Joomla! et aux corrections de bugs.

Compiler

Archives installables, tâches diverses

vg swdev 0005 buildingLors de l'élaboration de votre propre extension (ou package), à la fin vous devez créer une archive installable sur votre site ou que vous pouvez soumettre à la communauté via le Joomla! Extensions Directory (JED). L'utilisation d’outils comme make, ANT ou PHING vous aideront à accomplir ces tâches répétitives. PHING est la version PHP extensible de ANT et comme il est supporté nativement par PhpStorm cela en fait le choix naturel pour la construction de l'archive, l'exécution du test, la validation et les autres tâches spécifiques du projet.

Tester

Les tests unitaires, les tests automatisés, les tests d'interface utilisateur (UI)

vg swdev 0006 testing“Tout le monde” en parle, mais seuls quelques-uns parviennent à le faire. Il y a une forte poussée et une bonne raison d'adopter un test automatique. Le concept d'avoir des tests automatisés semble évident, comment les mettre en œuvre réellement et déployer ces derniers dans vos projets est une chose différente, surtout avec l'interaction de l'interface utilisateur. J'ai encore besoin de réfléchir à ça, et c'est pourquoi je l’ai gardé pour la fin ;)

Et maintenant...

Nous avons l'intention de documenter tous ces sujets et de les partager dans les prochains numéros du JCM. Si vous avez des commentaires ou suggestions de sujets à couvrir s'il vous plaît entrer en contact avec Marco Dings.

Et comme chantonnait la Sirius Cybernetics Corporation Complaints Division : Share and enjoy! (H2G2)

Traduction libre par Nicolas Ogier de l'article original : Practical Development de Marco Dings.
Read 11561 times Tagged under French
Nicolas OGIER

Nicolas OGIER

Cofondateur et membre du conseil d'administration de l'Association Francophone des Utilisateurs de Joomla (AFUJ), je suis un professeur de Sciences de la Vie et de la Terre et surtout Joomladdict depuis 2005 ! J'organise les Joomladay France depuis 2007, maintient les serveurs, assure les traductions des news, réalise les packs francophones... par amour de Joomla !

Social Profiles