Niveau Niveau confirmé

Comment bien coder en Javascript ?

Tutorieljavascript

Publié par le , mis à jour le (10285 lectures)

javascript bonnes pratiques code optimiser intrusif obstrusif

Commentez vos scripts

Quoi de pire qu'un code où les variables et méthodes ne veulent rien dire, où l'on ne trouve aucun commentaire et où l'indentation est quasi inexistante ? Entre nous, parmi les deux codes qui suivent, lequel préférez-vous lire ou modifier ?
<script type="text/javascript"><!--
function f(i,a){
if(!document.getElementById||!document.getElementsByTagName)return;
var c=document.getElementById(i),l=c.getElementsByTagName(a);
if(!l)return;var b=l.length-1;for(b;b>=0;b--){if(!l[b].href)
continue;window.alert(l[b].href);}
//--></script>
<script type="text/javascript"><!--

// Alerte de l'url pour chaque élément d'un conteneur
function fnRecapLinks(sId, sLink)
{
   // Test des méthodes
   if(!document.getElementById || !document.getElementsByTagName)
   {
      return;
   }

   // Tableau récapitulatif des éléments 'sLink' du conteneur 'sId'
   var oCont = document.getElementById(sId);
   var aLinks = oCont.getElementsByTagName(sLink);

   if(!aLinks)
   {
      return;
   }

   // Lancement d'une alerte sur chaque item du tableau aLinks
   var iI = aLinks.length - 1;

   for(iI; iI >= 0; iI--)
   {
      if(!aLinks[iI].href)
      {
         continue;
      }

      window.alert(aLinks[iI].href);
   }
}

//--></script>

Comme vous pouvez le constater, les variables et la fonction ont une syntaxe particulière. Elles commencent toutes par une ou deux lettres minuscules suivies de mots attachés commençant par une majuscule. C'est une convention de nommage appelée "Notation de type hongroise". Elle combine la "Notation Pascal" précédée du type de la variable (a pour array, s pour string, o pour object, i pour integer, fn pour function, v pour variant, etc...).

Aussi, il est conseillé, en développement, de commenter vos scripts mais ni trop ni trop peu. Ici, on est à la limite de l'excès. Avec un peu d'habitude, un commentaire par fonction devrait suffire. Lorsque vous y repasserez plusieurs mois après, vous n'aurez pas à réfléchir sur ce que vous aviez codé. Bien entendu, les scripts que vous mettez en ligne peuvent, quant à eux, être optimisés, compressés et se passer de ces commentaires mais gardez-en toujours une copie documentée.