Tab ou espace, l'autre guerre de religions

Utilisez-vous le hard tab ou le soft tab pour votre code.

Vous pouvez sélectionner 1 option
 
 
Voir les résultats
ViPHP
ViPHP | 1380 Messages

07 août 2007, 15:06

Définition:
hard tab: ascii \x09
soft tab: hard tab remplcé par des espaces par l'éditeur

On connaissait la guerre vim/emacs mais connaissiez vous la discussion sans fin sur l'usage du hard tab et soft tab dans le code.

J'avoue que je suis partagé même si j'utilise des hard tab que je visualise à 4 dans mes éditeurs (vim et SciTE). Une hérésie pour Linus Thorvald qui utilise le hard tab ET le visualise à 8.
Tabs are 8 characters, and thus indentations are also 8 characters.
There are heretic movements that try to make indentations 4 (or even 2!)
characters deep, and that is akin to trying to define the value of PI to
be 3.
http://www.adamspiers.org/computing/Lin ... odingStyle
http://www.movementarian.org/docs/whytabs/
http://www.adamspiers.org/computing/why_no_tabs.html
ripat

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

07 août 2007, 15:13

Idem, le hard tab que je visualise à 4 espaces ...
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

ViPHP
ViPHP | 928 Messages

07 août 2007, 15:51

Brûlons les hérétiques qui osent utiliser des tabs à 4 caractères :agenouille:

J'utilise des hard tabs à 4 caractères, par défaut dans mon éditeur de texte. Ca m'embêterai pas mal d'avoir à scroller horizontalement à cause de tabs deux fois plus grands.

ViPHP
ViPHP | 5924 Messages

07 août 2007, 16:19

J'utilise les hard tab (je déteste les soft tab), et pour moi, l'idéal, ce sont les tabs de notepad2, qui, je crois, sont à 8 caractères

ViPHP
ViPHP | 928 Messages

07 août 2007, 16:24

4 caractères

Code : Tout sélectionner

if ($toto) { while (true) { foreach ($toto AS $tata) { do_something($tata); } } }
8 caractères

Code : Tout sélectionner

if ($toto) { while (true) { foreach ($toto AS $tata) { do_something($tata); } } }

ViPHP
ViPHP | 5924 Messages

07 août 2007, 16:26

C'est 8 alors :)

Administrateur PHPfrance
Administrateur PHPfrance | 3131 Messages

07 août 2007, 16:39

J'utilise les soft tabs à 4 :)

Tout simplement parce que j'aime bien Python, que j'aime bien Yaml, et que dans ces deux langages (l'un de programmation, l'autre de configuration) l'utilisation de tabulations peut amener des problèmes. J'élimine donc les problèmes.

Il ne faut pas oublier un truc : Linus est un trolleur de première !

ViPHP
ViPHP | 5924 Messages

07 août 2007, 16:57

Alors les langages sont mals faits. Que ces langages utilisent les espaces ou tabulations dans leur synatxe (c'est le cas de python je crois ? ), soit, mais dans ce cas, il faut considérer espace et tabulation de la même manière, voire nouvelle ligne ou retour charriot aussi (mais ce n'est pas toujours envisageable).

ViPHP
ViPHP | 928 Messages

07 août 2007, 16:59

Python utilise l'indentation au lieu des { } pour les blocks conditionnels, je ne savais pas qu'il le gérait avec 4 espaces par contre.

Mammouth du PHP | 19672 Messages

07 août 2007, 23:26

Personnellement, j'ai une préférence pour le soft tab à 4 espace. Mais l'intérêt d'un débat me semble d'un intérêt limité

Il me semble que c'est d'abord et avant tout une question de convention de codage, d'autant plus dans la mesure où on code en équipe. C'est également une question de confort de lecture... et peut-être aussi des habitudes personnelles de chacun.
Si l'ensemble des membres d'une équipe a une préférence globale pour une forme spécifique, si tout le monde se met d'accord, l'essentiel est que tous parlent le même langage et qu'un membre puisse au pied levé en remplacer un autre pour une raison x ou y sans qu'on aie à craindre de voir des styles de codage hétéroclites dans un même fichier.

Tout le reste n'est que littérature un peu futile à mon sens :-k
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

ViPHP
ViPHP | 1380 Messages

08 août 2007, 07:34

Il me semble que c'est d'abord et avant tout une question de convention de codage, d'autant plus dans la mesure où on code en équipe. (...) Tout le reste n'est que littérature un peu futile à mon sens :-k
Exact. D'une importance vitale pour les projets collaboratifs où les conventions de codage se doivent d'être coulées dans le bronze.

Exemple, les conventions de codage de pear (soft tab)
http://pear.php.net/manual/fr/standards ... .indenting

les conventions de codage du noyau linux (hard tab 8car.)
http://pantransit.reptiles.org/prog/CodingStyle.html

C'est un peu comme la grammaire française,:
Belle Marquise, vos beaux yeux me font mourir d'amour.
Me font vos yeux beaux mourir, belle Marquise, d'amour
.

Tous deux grammaticalement corrects mais l'une plus lisible que l'autre.

Et puis, Cyrano, j'ai d'autres sondages sous le coude si tu veux :wink: Comme par exemple sur l'usage des accolades. Le style C (K&R) ou le style GNU? La barbe au-dessus ou la barbe en-dessous? La mer ou la montagne? Boire ou conduire? Cyrano ou Roxane?
:wink:
C'est juste que je suis d'humeur oisive ces jours-ci, alors je meuble...
ripat

Mammouth du PHP | 19672 Messages

08 août 2007, 21:14

...La barbe au-dessus ou la barbe en-dessous? ...
C'est le type même de question existentielle auquel j'apporte une résolution en faisant un "à la manière de" Alexandre dans le Noeud Gordien : J'ai déjà porté la barbe, je me suis rasé et finalement, ça permet de moins se poser de question au moment de s'endormir :D
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Administrateur PHPfrance
Administrateur PHPfrance | 11457 Messages

08 août 2007, 22:52

D'accord, mais une fois glabre, tu dors avec le menton au-dessus ou au-dessous ?... :lol:

ViPHP
ViPHP | 5924 Messages

09 août 2007, 01:45

Une petite question à ceux qui utilisent les soft tabs. C'est pourquoi ? Hormis l'argument du Python que je ne peux pas trop discuter vu que je ne connais pas le Python, en quoi est ce que les softs tabs sont plus pratiques pour vous, que les hards tabs ?

Mammouth du PHP | 19672 Messages

09 août 2007, 06:24

Entre autres choses, j'utilise divers éditeurs selon le type de code manipulé pour un besoin spécifique ou un autre. Un détail assez mineur pourtant : lorsque je copie/colle du code ici (sur le forum), en utilisant des soft tabs, mon code restera aligné, mais les hard tabs ne seront pas affichés de la même manière et l'alignement saute.

Encore une fois, c'est un choix pour chacun et pour un confort de lecture. Lors de l'exécution, ça ne fait strictement aucune différence, ces espaces sont ignorés.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe: