Dans le développement logiciel, il y a de ces débats qui suscitent des réactions très fortes auprès des développeurs. Certains d’entre nous sont fortement attachés à une façon de développer ou de travailler en particulier. Dès qu’une divergence survient, nous assistons à une montée des barricades.
Rapidement, j’ai dénoté quelques exemples :
- Google Chrome vs Firefox.
- Agile > Waterfall
- Positionnement de l’accolade à la suite d’un bloc déclaratif (ex. : if() {})
- Windows ou Linux
Le débat de ceux qui ne se terminent jamais est l’utilisation des tabulations versus les espaces. Depuis qu’il est possible d’insérer une tabulation à partir de votre clavier, le débat existe.
Au début des temps, l’utilisation de la tabulation était une façon simpliste de compresser le contenu des fichiers texte. Sur un terminal Unix, une tabulation équivalait à huit espaces. Le ratio de compression était relativement intéressant et à coût faible.
Les années ont passé et l’interprétation du symbole ASCII de la tabulation a changé avec le temps et l’aspect de l’économie d’espace disque est, disons-le, moins important sur nos ordinateurs modernes.
Après tout, que sera votre premier réflexe lorsque vous serez à court d’espace disque? Supprimer quelques fichiers inutilisés ou convertir les tabulations en espaces dans vos fichiers texte bruts? Autres temps, autres mœurs, comme ils disent.
L’utilisation de tabulations dans du code devrait être à éviter à tout prix. À ce jour, son utilisation est, à mon avis, l’effet d’une tolérance molle et d’une proximité facile sur le clavier. La tabulation est tout juste à côté de la lettre Q (lorsqu’il est en mode QWERTY).
Pour un développeur .NET, Visual Studio n’est pas très rigide sur l’utilisation des tabulations ou des espaces dans le code. À mon avis, la principale raison de cela est que, lorsqu’un groupe de développeurs travaillent dans un environnement uniforme, le débat se pose un peu moins.

Il est vrai que l’irritation est à son apogée lorsque les développeurs proviennent d’un environnement mixte et à travers différentes plateformes. Je me souviens d’avoir eu à argumenter, avec un professeur, à propos d’un travail remis alors que j’avais programmé celui-ci avec un IDE sous Linux alors que lui le corrigeait sous Windows.
Le résultat visuel était catastrophique. Les deux éditeurs n’utilisaient pas la même configuration d’indentation par tabulations. Heureusement, j’avais été en mesure de faire prévaloir mon point auprès de ce professeur.
Prendre action
La seule façon d’enrayer cette situation est de prendre action, et d’établir avec vos camarades développeur un standard de développement où vous établirez des règles communes pour le maintien de votre code. L’utilisation des espaces plutôt que des tabulations doit y figurer. Un consensus doit être établi.
Si vous êtes plus du genre à prendre action sur-le-champ, voici comment vous pouvez y arriver selon votre éditeur ou votre IDE.
Visual Studio
- Visitez l’écran de configuration situé sous Outils > Options > Éditeur texte > Tous les langages > Tabulations.
- Cochez l’option « Insérer des espaces ».
Sublime Text
- Visiter le menu Preferences > Setting – User
- Ajouter la ligne « translate_tabs_to_spaces »: true
Notepad++
- Visiter l’écran de configuration situé sous Settings > Preferences > Tab Settings.
- Selon le langage sélectionné, cocher l’option « Replace by space ».