Vos habitudes d'indentation en C/C++

Vos habitudes d'indentation en C/C++ - C++ - Programmation

Marsh Posté le 05-11-2004 à 10:03:02    

Développant sous C++ en équipe, je dois très souvent prendre sur moi lorsque je vois les habitudes d'indentation de mes collègues (on a pas réellement de norme commune pour l'écriture): quand je trifouille dans leur code je fais l'effort de pas le modifier à mon goût, mais des fois ma prose informatique est remaniée par des hérétiques du bon sens (enfin selon mes critères  :) ).
Pour moi l'indentation est très importante; comme dirait l'autre c'est peut-être un détail pour vous, mais pour moi ça veut dire beaucoup... En tout cas ça me permet de me plonger et comprendre beaucoup plus facilement du code.
Le point de désaccord principal que j'ai avec mes collègues, c'est le positionnement des accolades; moi je les mets toujours en début de ligne, de manière à ce qu'une accolade ouvrante tombe toujours en face de son accolade fermante. Certains collègues eux, placent l'accolade ouvrante en fin de ligne.
 
Mon style:
 
for (...)
{
   for (...)
   {
      if (...)
      {
         ...
      }
   }
}
 
Le style du côté obscur:
 
for (...) {
   for (...) {
      if (...) {
         ...
      }
   }
}
 
Dans un cas trivial ça pose pas trop de souci, mais quand il commence à y avoir 3 "if" imbriqués avec 4 "for" au milieu, c'est moins évident.
 
J'ai jeté un oeil sur le net, mais je n'ai pas trouvé réellement de norme visuelle d'écriture, comme il peut en exister pour le nommage des variables par exemple.
 
Vous êtes adeptes de quel style vous ???

Reply

Marsh Posté le 05-11-2004 à 10:03:02   

Reply

Marsh Posté le 05-11-2004 à 10:05:38    

L'accolade sur la ligne suivante bien sur! Je ne comprends pas comment certains peuvent arriver a lire et a comprendre du code ecrit dans le style "cote obscur"

Reply

Marsh Posté le 05-11-2004 à 10:13:56    

Ace17 a écrit :

L'accolade sur la ligne suivante bien sur! Je ne comprends pas comment certains peuvent arriver a lire et a comprendre du code ecrit dans le style "cote obscur"


c'est la norme java non?


---------------
Can't buy what I want because it's free -
Reply

Marsh Posté le 05-11-2004 à 10:14:02    

Ace17 a écrit :

L'accolade sur la ligne suivante bien sur! Je ne comprends pas comment certains peuvent arriver a lire et a comprendre du code ecrit dans le style "cote obscur"


 
Merci, ça fait du bien de lire ça, je ne suis donc pas seul !!!  :D

Reply

Marsh Posté le 05-11-2004 à 10:14:44    

Le style coté obscur bien sur. C'est à l'indentation et uniqument à l'indentation que l'on reconnais les imbrications de blocs, ainsi, on limite ainsi le fait que les accolades genent la lecture car elles font double emploi avec le retrait.
 
Ce n'est pas pour rien que sun, dans les java coding style, à choisi ce style...
 


---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
Reply

Marsh Posté le 05-11-2004 à 10:23:22    

kadreg a écrit :

Le style coté obscur bien sur. C'est à l'indentation et uniqument à l'indentation que l'on reconnais les imbrications de blocs, ainsi, on limite ainsi le fait que les accolades genent la lecture car elles font double emploi avec le retrait.
 
Ce n'est pas pour rien que sun, dans les java coding style, à choisi ce style...

[:plusun]


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 05-11-2004 à 10:29:04    

gnu ou linux

Reply

Marsh Posté le 05-11-2004 à 10:56:14    

Ace17 a écrit :

L'accolade sur la ligne suivante bien sur! Je ne comprends pas comment certains peuvent arriver a lire et a comprendre du code ecrit dans le style "cote obscur"


+1 d'autant que cette ligne me sert generalement à mettre un commentaire sur ce que va faire le bloc...


---------------
Quizz'n'Blind pour tester vos connaissances
Reply

Marsh Posté le 05-11-2004 à 10:58:23    

kadreg a écrit :

Le style coté obscur bien sur. C'est à l'indentation et uniqument à l'indentation que l'on reconnais les imbrications de blocs, ainsi, on limite ainsi le fait que les accolades genent la lecture car elles font double emploi avec le retrait.
 
Ce n'est pas pour rien que sun, dans les java coding style, à choisi ce style...


 
Mon problème c'est que j'ai commencé à pisser du code bien avant que java n'existe, et j'ai donc pris l'habitude de répérer les imbrications avec les accolades. Maintenant j'aurais vraiment du mal à changer mes habitudes...

Reply

Marsh Posté le 05-11-2004 à 11:00:23    

kadreg a écrit :

Le style coté obscur bien sur. C'est à l'indentation et uniqument à l'indentation que l'on reconnais les imbrications de blocs, ainsi, on limite ainsi le fait que les accolades genent la lecture car elles font double emploi avec le retrait.
 
Ce n'est pas pour rien que sun, dans les java coding style, à choisi ce style...


 
foutaise, ca rends des gros patés illisible. L'oeil, effrayé, s'y perd, les reperes s'effacent, le cerveau abdique, le vide gagne. La raison, vaincue, pleure, et le chaos, atroce, despotique, sur le crane incliné du programmeur plante son drapeau noir.


---------------
NP: HTTP Error 764 Stupid coder found
Reply

Marsh Posté le 05-11-2004 à 11:00:23   

Reply

Marsh Posté le 05-11-2004 à 11:03:11    

chrisbk a écrit :

foutaise, ca rends des gros patés illisible. L'oeil, effrayé, s'y perd, les reperes s'effacent, le cerveau abdique, le vide gagne. La raison, vaincue, pleure, et le chaos, atroce, despotique, sur le crane incliné du programmeur plante son drapeau noir.


 
+1, il est urgent d'amender le java coding style en conséquence  :D


---------------
From now on, you will speak only when spoken to, and the first and last words out of your filthy sewers will be "Sir!"
Reply

Marsh Posté le 05-11-2004 à 11:36:14    

Moi je m'en fous, j'ai un IDE qui me rajoute les accolades automatiquement qui qui fait la mise en page pour moi.

Reply

Marsh Posté le 05-11-2004 à 11:39:46    

schnapsmann a écrit :

+1, il est urgent d'amender le java coding style en conséquence  :D


Beurk ...   :lol:  
Style K&R sois-disant obscure +1 !   :bounce:

Reply

Marsh Posté le 05-11-2004 à 11:42:04    

gizmo a écrit :

Moi je m'en fous, j'ai un IDE qui me rajoute les accolades automatiquement qui qui fait la mise en page pour moi.


 
moi aussi, (visual 2003), mais il le fait mal [:benou]


---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
Reply

Marsh Posté le 05-11-2004 à 11:42:36    


 
retourne dans ta grotte le barbu :o


---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
Reply

Marsh Posté le 05-11-2004 à 11:43:36    

(j'arrive pas a comprendre qu'on puisse programmer en "style obscur", c'est franchement le fatras, pour ne pas dire le bordel)


---------------
NP: HTTP Error 764 Stupid coder found
Reply

Marsh Posté le 05-11-2004 à 11:45:42    

chrisbk a écrit :

(j'arrive pas a comprendre qu'on puisse programmer en "style obscur", c'est franchement le fatras, pour ne pas dire le bordel)


 
Marrant ça, je pense exactement la même chose du style inverse.
 
Je pense que suivant nos constructions mentales et nos manière d'abstraire, les informations que l'on garde sont mieux représenté par un style ou un autre, et c'est celui qui nous semble le plus naturel.


---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
Reply

Marsh Posté le 05-11-2004 à 11:46:37    

chrisbk a écrit :

(j'arrive pas a comprendre qu'on puisse programmer en "style obscur", c'est franchement le fatras, pour ne pas dire le bordel)


Je trouve aussi, mais je comprend sans problème le raisonnement
 
Par contre ce qui me fait rigoler c'est quand les gens codant en java style critiquent  la gestion de blocs par indentation de Python :whistle:  
 
(et j'aime bien la version non K&R, ca laisse plus d'espace et ca permet de mettre plein de commentaires dans les accolades :love: )

Citation :

Je pense que suivant nos constructions mentales et nos manière d'abstraire, les informations que l'on garde sont mieux représenté par un style ou un autre, et c'est celui qui nous semble le plus naturel.


Ou alors la manière dont t'as appris
fondamentalement, les deux styles se valent (la version K&R utilise surement une paire de chars en moins, mais bon [:spamafote] en face la version non K&R a un code qui "respire" mieux )


Message édité par masklinn le 05-11-2004 à 11:47:58

---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le 05-11-2004 à 11:47:09    

Vive le cobol et ses colonnes...[:dawa]


---------------
Can't buy what I want because it's free -
Reply

Marsh Posté le 05-11-2004 à 11:48:41    

skeye a écrit :

Vive le cobol et ses colonnes...[:dawa]


vive le l33t et ses...
 
ah ben et ses rien du tout :sol:


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le 05-11-2004 à 11:49:40    

kadreg a écrit :

Marrant ça, je pense exactement la même chose du style inverse.


 
bin pour moi c'est simple : les blocks sautent aux yeux. ca fait des barres verticales bien visibles
alors qu'avec ton style, bin quequette (enfin moi, je m'y retrouve clairement pas)


---------------
NP: HTTP Error 764 Stupid coder found
Reply

Marsh Posté le 05-11-2004 à 11:56:32    

Masklinn a écrit :


(et j'aime bien la version non K&R, ca laisse plus d'espace et ca permet de mettre plein de commentaires dans les accolades :love: )


Les commentaires, c'est pour les faibles :o

Reply

Marsh Posté le 05-11-2004 à 12:00:27    

gizmo a écrit :

Les commentaires, c'est pour les faibles :o


C'est pour ceux qui ont du comprendre des codes de plus de 50k lignes non commentés, mal indentés et sans docs [:spamafote]  
en MFC en plus [:benou_miam]


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le 05-11-2004 à 12:08:23    

Le troll du vendredi :love:
Moi je suis adepte du saut de ligne partout.

Code :
  1. for (
  2.     int i = 0;
  3.     i < 10;
  4.     ++i )
  5. {
  6. }


[:slurrp]
Le prochain Visual Studio permettra de choisir son style de formattage et il mettre en forme comme tu aimes.
 
(bon je rigole pour le for au dessus, sauf quand des fois avec la STL et les const_reverse_iterator ca fait trop long :D)


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite
Reply

Marsh Posté le 05-11-2004 à 12:19:27    

Code :
  1. for (
  2.     int i = 0;
  3.     i < 10;
  4.     ++i ) {
  5. }

 :whistle:

Reply

Marsh Posté le 05-11-2004 à 12:20:47    

Code :
  1. for (
  2.     int i = 0;
  3.     i < 10;
  4.     ++i
  5. ) {
  6. }


:o


Message édité par masklinn le 05-11-2004 à 12:21:09

---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le 05-11-2004 à 12:23:35    

vive le vb hein [:dawa]

Reply

Marsh Posté le 05-11-2004 à 12:25:44    

push a écrit :

vive le vb hein [:dawa]


[:nero27]


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le 05-11-2004 à 12:50:08    

HelloWorld a écrit :


Le prochain Visual Studio permettra de choisir son style de formattage et il mettre en forme comme tu aimes.


 
oH PUTAING? J4AVAIS PAS VU L4OPTION §§§


---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
Reply

Marsh Posté le 05-11-2004 à 13:20:34    

Moi je suis clairement adepte de ton style... meme si où je bosse c'est le style obscur qui est de rigueur :(

Reply

Marsh Posté le 05-11-2004 à 13:28:12    

et un langage considerons les fautes d'indentation/format comme une faute de syntaxe ? genre y'a un fichier de desc decrivant le design de code (genre si une fonction doit commencer par une majuscule) et qui envoie tout peter si le design est pas respecté ? [:god]
 
ca serait l'ideal pour avoir du code uniforme au sein d'une Eise par ex :o
 

Reply

Marsh Posté le 05-11-2004 à 13:30:15    

chrisbk a écrit :

et un langage considerons les fautes d'indentation/format comme une faute de syntaxe ?  


 
python [:spamafote]


---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
Reply

Marsh Posté le 05-11-2004 à 13:33:36    

format cote obscure... plus clair avec un bon IDE, pas de lignes inutiles. [:jagstang]


---------------
IVG en france
Reply

Marsh Posté le 05-11-2004 à 13:38:06    


 
Y'a d'ot truc que l'identation ? permet il de configurer/choisir comment on veux que le code soit ?  

Reply

Marsh Posté le 05-11-2004 à 13:38:23    

format 'clair', je prefere quand les autres l'utilisent quand je regarde leur code, c'est beaucoup plus clair  :o


---------------
.
Reply

Marsh Posté le 05-11-2004 à 13:40:42    

chrisbk a écrit :

Y'a d'ot truc que l'identation ? permet il de configurer/choisir comment on veux que le code soit ?


 
tu devrais tester, et choisit bien ton editeur  [:rhetorie du chaos] (parce que jedit par exemple, j'ai des probleme pour le python, je fais tout avec emacs)


---------------
IVG en france
Reply

Marsh Posté le 05-11-2004 à 13:42:10    

Oué, chaibien, mais tu sais, le temps, file, vite, nuit, jour, boulot, dodo, toussa
j'avais deja fait un essai fort peu concluant y'a ptet 1 an (chaipu ce qui merdait, mais ca merdait)

Reply

Marsh Posté le 05-11-2004 à 13:43:37    

chrisbk a écrit :

Y'a d'ot truc que l'identation ? permet il de configurer/choisir comment on veux que le code soit ?


non [:ddr555]  
 
Tu t'en fous du niveau d'indentation (même les docs officielles recommandent 4 spaces), mais tout fonctionne à l'indentation :D  
(enfin il y a quand même ":" après les débuts de blocs, if while for, définitions de fonctions ou de classes, ...)
 
Uriel > SciTE fonctionne nickel pour le Python :D


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le 05-11-2004 à 15:01:10    

ouais mais si tu bosses avec des boolays, ils te collent des "#end for" dans tous les sens parce que "c'est plus lisible"
 
idem, au niveau du parenthésage "if <condition>:" (valide en python), c'est pas assez lisible, alors que "if (<condition> ):" c'est franchement mieux :o
 
et je parle pas des "return (x)" (en C ça pue déjà, mais alors en python, bonjour la faut de frappe et hop un tuple)

Reply

Marsh Posté le 05-11-2004 à 15:04:18    

Taz a écrit :

ouais mais si tu bosses avec des boolays, ils te collent des "#end for" dans tous les sens parce que "c'est plus lisible"
 
idem, au niveau du parenthésage "if <condition>:" (valide en python), c'est pas assez lisible, alors que "if (<condition> ):" c'est franchement mieux :o
 
et je parle pas des "return (x)" (en C ça pue déjà, mais alors en python, bonjour la faut de frappe et hop un tuple)


[:rofl][:rofl][:rofl]
[:rofl][:rofl][:rofl]
[:rofl][:rofl][:rofl]


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed