Un code minifié et un code bien indenté contiennent exactement la même information — mais l'un se debug en quelques secondes, l'autre demande de tout reformater d'abord. Ce guide explique quand utiliser chaque forme.
En HTML et XML, l'indentation reflète la hiérarchie d'imbrication des balises — elle permet de voir d'un coup d'œil quel élément est contenu dans quel autre, sans avoir à compter les balises ouvrantes/fermantes. Un document HTML reçu minifié (souvent le cas après export depuis un CMS ou un outil de build) devient quasiment illisible dès qu'il dépasse quelques lignes.
À l'inverse, un fichier servi aux visiteurs n'a aucun besoin d'être lisible par un humain — chaque espace ou retour à la ligne superflu est du poids transféré pour rien. La minification retire ces caractères inutiles (espaces, retours à la ligne, commentaires) sans changer le comportement du code, réduisant la taille du fichier et donc le temps de chargement.
La bonne pratique consiste à toujours développer et versionner (Git) la version indentée, et ne minifier qu'à l'étape de build/déploiement — jamais l'inverse, qui rendrait le code source lui-même illisible pour l'équipe.
Une requête SQL n'a pas de structure de balises imbriquées comme le HTML, mais une structure logique en clauses (SELECT, FROM, WHERE, JOIN...). Aligner chaque clause sur sa propre ligne rend immédiatement visible la logique de la requête — particulièrement utile pour repérer une jointure manquante ou une condition oubliée dans une requête complexe.
Pour de petits fichiers, le gain est marginal. Sur des fichiers HTML/XML volumineux ou à fort trafic, retirer même quelques pourcents de poids transféré a un effet cumulé réel, surtout sur des connexions lentes.
Non — il reformate la structure des balises mais ne vérifie pas la conformité aux normes (balises non fermées, attributs dupliqués...). Pour une validation stricte, un validateur dédié reste nécessaire.
L'indentation par mots-clés appliquée ici est générique et fonctionne sur la quasi-totalité des dialectes SQL courants, puisqu'elle repose sur la structure des clauses communes (SELECT/FROM/WHERE...) plutôt que sur une syntaxe propriétaire.
Outils similaires