Vos conventions de "code"

Vos conventions de "code" - Programmation

Marsh Posté le 12-03-2002 à 08:56:48    

Tout est dit.  
Moi j'ai tendance à être plus java en tout, mais pour certains langages comme le SQL j'aurais plutôt à m'orienter plutôt vers un style C++, je ne sais pas pourquoi. Aors il faut bien qu'un jour je mette les choses au point.  
 
Et puis si possible précisez les sites à partir desquels vous avez construit votre convention.  
 
Merci d'avance pour votre participation! :hello:

 

[jfdsdjhfuetppo]--Message édité par Krueger--[/jfdsdjhfuetppo]


---------------
"Colère et intolérance sont les ennemis d'une bonne compréhension." Gandhi
Reply

Marsh Posté le 12-03-2002 à 08:56:48   

Reply

Marsh Posté le 12-03-2002 à 09:04:55    

Krueger a écrit a écrit :

Tout est dit.
 
Moi j'ai tendance à être plus java en tout, mais pour certains langages comme le SQL j'aurais plutôt à m'orienter plutôt vers un style C++, je ne sais pas pourquoi. Aors il faut bien qu'un jour je mette les choses au point.
 
 
 
Et puis si possible précisez les sites à partir desquels vous avez construit votre convention.
 
 
 
Merci d'avance pour votre participation! :hello:  
 
 




Pareil !

Reply

Marsh Posté le 12-03-2002 à 10:01:01    

bah, j'en ai pas vraiment... :cry:  
qu'est-ce que tu entends exactement par convention de code?? tu peux m'éclairer par exemple avec tes deux exemples C++/Java??

Reply

Marsh Posté le 12-03-2002 à 10:01:57    

moi je programme essentiellement en Pascal (Delphi) et je suis les conventions de Borland :
http://community.borland.com/artic [...] 80,00.html

 

[jfdsdjhfuetppo]--Message édité par antp--[/jfdsdjhfuetppo]


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 12-03-2002 à 10:08:48    

:hello:
Pour ma part ca dépend de mon heumeur :p
mais vu que je programme en Perl, j'essaie de faire du code buvable, et facile à digérer :lol:
 
comme le dit dropsy

Citation :

qu'est-ce que tu entends exactement par convention de code?? tu peux m'éclairer par exemple avec tes deux exemples C++/Java??


 
Je me suis imposé une convention dans l'écriture du code, des commentaires, et des texte affichés à l'écran,...


---------------
Tout à commencé par un rêve...
Reply

Marsh Posté le 12-03-2002 à 10:16:45    

... principalement pour avoir un code plus facile à maintenir. ;)
 
Per exemple si on a quelque chose du genre

Code :
  1. class MaClasse
  2. {
  3.   void maMethode()
  4.   {
  5.   }
  6. }


puis plus loin

Code :
  1. class mon_autre_classe
  2. {
  3.   void ma_methode()
  4.   {
  5.   }
  6. }


C'est plus difficile à lire, car les classes et méthodes ne sont pas codée dans un même style.

Reply

Marsh Posté le 12-03-2002 à 10:44:48    

c'est cela, oui... je vois...  :o  
disons, que je respecte plutôt bien l'indentation des blocs...
j'essaye d'avoir une cohérence dans les variables fonctions et autres objets, mais c pas facile facile :D

Reply

Marsh Posté le 12-03-2002 à 11:30:49    

nous on a pas vraiment le choix.. c mon ecole  qui les impose:
indentation
mettre des prefixe devant les variables, les constantes, les tableau etc..., par exemple v_variable, t_test, c_constante...

Reply

Marsh Posté le 12-03-2002 à 12:44:48    

helvetik a écrit a écrit :

nous on a pas vraiment le choix.. c mon ecole  qui les impose:
indentation
mettre des prefixe devant les variables, les constantes, les tableau etc..., par exemple v_variable, t_test, c_constante...  




 
Moi je reviens beaucoup à la ligne, et j'indente d'un cara, pas de majuscules, ex :
 

Code :
  1. classe salut()
  2. {
  3. int a;
  4. char *b;
  5. void c();
  6. };
  7. void main();
  8. {
  9. salut *sa = new salut;
  10. sa->a = 5;
  11. sa->b = "salut";
  12. delete sa;
  13. }


 
et non
 

Code :
  1. void main();
  2. {
  3. salut *sa; sa = new salut;
  4. sa->a = 5;sa->b = "salut";
  5. delete sa;
  6. }


 
(j'ai déjà vu ce style)
 
@++ :hello:


---------------
Visitez mon site : http://www.jujubarbare.linux-fan.com
Reply

Marsh Posté le 12-03-2002 à 12:46:13    

juju_le_barbare a écrit a écrit :

 
 
Moi je reviens beaucoup à la ligne, et j'indente d'un cara, pas de majuscules, ex :




 
pour le C/C++ c'est en general 1 tab (je pense) et pas de majuscules, alors que pour le Pascal Objet c'est 2 caractères et des majuscules.
1 caractère d'identation ça donne un code illisible je trouve :/


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 12-03-2002 à 12:46:13   

Reply

Marsh Posté le 12-03-2002 à 13:07:41    

dropsy a écrit a écrit :

c'est cela, oui... je vois...  :o  
disons, que je respecte plutôt bien l'indentation des blocs...
j'essaye d'avoir une cohérence dans les variables fonctions et autres objets, mais c pas facile facile :D  




notation hongroise, quoi !

Reply

Marsh Posté le 12-03-2002 à 13:09:29    

c'est quelle convention quand on code comme ça:
 
void maFonction(String bidule){
     Integer toto = 0;
 
     ...
}


---------------
A straight line is a special case of a curve. It's a curve which is uncurved. -- Susskind.
Reply

Marsh Posté le 12-03-2002 à 13:13:54    

TBone a écrit a écrit :

c'est quelle convention quand on code comme ça:
 
void maFonction(String bidule){
     Integer toto = 0;
 
     ...
}  




 
Pour moi, c'est du Java.

Reply

Marsh Posté le 12-03-2002 à 13:57:30    

ceam a écrit a écrit :

à lire pour Php
 
http://www.zephpmag.com/extraits/phpmag_02_sample.pdf
 
Standard de codage d'après ZePHPmag  




 
aïe aïe... :cry:  
je respecte pas grand chose de ce qu'il préconise...
 
Y a des trucs que je pourrais (devrais??) respecter, mais faire:
if (totomachinchouette) {
    ....
    }
ça c'est pas possible! mon bloc, si il est pas comme ça:
{
    ....
}
je le trouve pas clair!
et au moins ça se voit tout de suite quand il manque un { ou }...

Reply

Marsh Posté le 12-03-2002 à 14:05:01    

dropsy a écrit a écrit :

 
 
aïe aïe... :cry:  
je respecte pas grand chose de ce qu'il préconise...
 
Y a des trucs que je pourrais (devrais??) respecter, mais faire:
if (totomachinchouette) {
    ....
    }
ça c'est pas possible! mon bloc, si il est pas comme ça:
{
    ....
}
je le trouve pas clair!
et au moins ça se voit tout de suite quand il manque un { ou }...  




 
Non, promis c'est juste un coup à prendre, on regarde pas de la même manière mais les deux sont strictement équivalents en terme d'efficacité. La méthode Java-PHP est plus concise puisque tu gagnes une ligne par bloc.

Reply

Marsh Posté le 12-03-2002 à 16:40:33    

Cherrytree a écrit a écrit :

 
 
Non, promis c'est juste un coup à prendre, on regarde pas de la même manière mais les deux sont strictement équivalents en terme d'efficacité. La méthode Java-PHP est plus concise puisque tu gagnes une ligne par bloc.  




moi je suis comme dropsy :
 

Code :
  1. {
  2. {
  3.   {
  4.   }
  5. }
  6. }


 
c'est beau je trouve, non ??? :love:

 

[jfdsdjhfuetppo]--Message édité par juju_le_barbare--[/jfdsdjhfuetppo]


---------------
Visitez mon site : http://www.jujubarbare.linux-fan.com
Reply

Marsh Posté le 12-03-2002 à 16:44:10    

moi c pareil sauf que je foue une tabulation au lieu d'un espace car j'étale mon code sur tt mon écrane t je trouve qu'un espace c pas suffisant  [:yes papa !!!]  [:yes papa !!!]

Reply

Marsh Posté le 12-03-2002 à 16:50:21    

Je@nb a écrit a écrit :

moi c pareil sauf que je foue une tabulation au lieu d'un espace car j'étale mon code sur tt mon écrane t je trouve qu'un espace c pas suffisant  [:yes papa !!!]  [:yes papa !!!]  




ouais c'est sûr, mais quand tu fais des imbrications, ton code fait 50 cm de large, plus que l'écran !!!


---------------
Visitez mon site : http://www.jujubarbare.linux-fan.com
Reply

Marsh Posté le 12-03-2002 à 16:53:43    

juju_le_barbare a écrit a écrit :

 
moi je suis comme dropsy :
 

Code :
  1. {
  2. {
  3.   {
  4.   }
  5. }
  6. }


c'est beau je trouve, non ??? :love:  




 
oui, enfin moi j'aurai mis:

Code :
  1. {
  2.    {
  3.       {
  4.       }
  5.    }
  6. }


 ;)  
 
une question se pose, pour ceux qui applique réelement des conventions de codage (qui ne s'arrêtent pas simplement aux accolades ;) ), est-ce un réel atout? Gain en productivité, maintenabilité? Vous travaillez plutôt en solo, plutôt en équipe??

Reply

Marsh Posté le 12-03-2002 à 16:59:40    

dropsy a écrit a écrit :

 
 
oui, enfin moi j'aurai mis:

Code :
  1. {
  2.    {
  3.       {
  4.       }
  5.    }
  6. }


 ;)  
 
une question se pose, pour ceux qui applique réelement des conventions de codage (qui ne s'arrêtent pas simplement aux accolades ;) ), est-ce un réel atout? Gain en productivité, maintenabilité? Vous travaillez plutôt en solo, plutôt en équipe??  




 
moi je suis solo, mais pour relire ton code 2 mois plus tard, ça aide !!!
de plus je distribue toujours mon code, faut penser aux autres !!!
1 espace franchement ça pète !!! je pense aux petits écrans  :D  
 
http://forum.hardware.fr/images/perso/pipe.gif


---------------
Visitez mon site : http://www.jujubarbare.linux-fan.com
Reply

Marsh Posté le 12-03-2002 à 17:00:12    

http://forum.hardware.fr/images/perso/pipe.gif
ooops


---------------
Visitez mon site : http://www.jujubarbare.linux-fan.com
Reply

Marsh Posté le 12-03-2002 à 22:01:06    

Autre pour ma part.
 
En fait c'est une convention de code qui existe dans ma boite depuis 6 ans et qui a ete mise en place par un collegue et adopter a l'unanimite. Si j'arrive un jour a mettre la main sur le doc Word je posterais le lien mais la j'ai keud.
 
Je rajouterais que c'est plus orienter C vu qu'a l'epoque ce collegue travaillait exclusivement avec ce language. Mais elle est suffisament flaxible pour pouvoir fonctionner avec n'importe quel autre language ;)


---------------
[:the%20real%20fantom] "C'est pour quand ? Pour quand tu ne t'y attendras pas. Ni avant. Ni après. Alors, fais ta vie. Ca viendra."  
Reply

Marsh Posté le 13-03-2002 à 08:45:25    

Moi je suis totalement C++, comme disait l'autre moi un

Code :
  1. function {
  2. }

ca me mélange complétement!
 
Pour ce qui est des langages "facile" comme VB ou DELPHI, je me tien loin  :lol: je hais les begin sub, beurk  [:murphy]

 

[jfdsdjhfuetppo]--Message édité par Ventilo--[/jfdsdjhfuetppo]

Reply

Marsh Posté le 13-03-2002 à 08:55:48    

Ventilo a écrit a écrit :

Moi je suis totalement C++, comme disait l'autre moi un

Code :
  1. function {
  2. }

ca me mélange complétement!
 
Pour ce qui est des langages "facile" comme VB ou DELPHI, je me tien loin  :lol: je hais les begin sub, beurk  [:murphy]  
 
 




 
vb je comprends, mais delphi c'est pas mal quand même !!!


---------------
Visitez mon site : http://www.jujubarbare.linux-fan.com
Reply

Marsh Posté le 13-03-2002 à 09:12:44    

Ventilo a écrit a écrit :

 
Pour ce qui est des langages "facile" comme VB ou DELPHI, je me tien loin  :lol: je hais les begin sub, beurk  




 
y a pas de sub en pascal :p
(ps: Delphi n'est pas un langage mais un environnement de dev :na:)
et je vois pas en quoi le pascal est bcp plus "facile" que le C++
bon hum on lance un débat pascal vs c++ ? :D


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 13-03-2002 à 09:45:02    

Je ne vois pas comment on peut generaliser une convention pour tous les langages... A la rigueur on peut uniformiser quelques notions, mais le reste ?
 
Celui qui code en perl comme en C++ comme en Java comme en pl/sql et beh... Son code ne ne doit pas tirer avantage des particularites de ces langages.

Reply

Marsh Posté le 13-03-2002 à 10:21:55    

antp a écrit a écrit :

bon hum on lance un débat pascal vs c++ ? :D


le débat est vite fini : pascal suxx.  
 
:D
 
pour les conventions, je suis plutôt comme le premier exemple de Krueger dans mon code perso, les noms de variables de la classe non préfixés. en code équipe, préfixage à m & co, majuscules au début de nom de classe, etc.
 
et je trouve que http://www.zephpmag.com/extraits/phpmag_02_sample.pdf est un ramassis de règles à la con. les trucs genre  
 
if () {  
   fn() ;
}  
 
plutôt que  
 
if () fn();  
 
je trouve ça _très_ con. une convention de nommage des fonctions, variables & co ok, une convention pour les accolades, ok, mais à ce point là ... :/

Reply

Marsh Posté le 13-03-2002 à 10:24:07    

oui, il faut pas pousser mamie dans les orties quand même!

Reply

Marsh Posté le 13-03-2002 à 10:26:26    

youdontcare a écrit a écrit :

le débat est vite fini : pascal suxx.  




 
:sarcastic:


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 13-03-2002 à 11:42:35    

Bah, puisqu'on est dans les conventions de code, moi j'aime bien le Python parceque tout le monde utilise les meme conventions pour indenter. Forcement le langage prend ca en compte pour définir les blocs d'instruction :)
 

Code :
  1. if machin:
  2.   fais des choses
  3.   et encore
  4. else:
  5.   autre chose
  6. et on continue


 
Pas d'indentation, pas de chocolat ! ( et en plus ton prog ne va meme pas compilé ) :D

Reply

Marsh Posté le 13-03-2002 à 14:13:13    

Kristoph a écrit a écrit :

...
Pas d'indentation, pas de chocolat ! ( et en plus ton prog ne va meme pas compiler ) :D  




---------------
Visitez mon site : http://www.jujubarbare.linux-fan.com
Reply

Marsh Posté le 13-03-2002 à 14:26:41    

"je trouve ça _très_ con. une convention de nommage des fonctions, variables & co ok, une convention pour les accolades, ok, mais à ce point là .."
 
Moi je suis pas d'accord
 
Je respecte une convention tres strict à ce niveau :

Code :
  1. if(blbla == 0)
  2. {
  3. }


je colle les if, les parenthese et les parametres proches des parentheses, mais j'espace tous les mots dedans
accolade a la ligne (je deteste la premiere accolade en fin de ligne, question de gout :))
La syntaxe, c'est perso. Moi c'est un style assea aéré
Mais il est (a mon avis) tres important de la respecter de A à Z dans un source
la raison ?
Pour la recherche d'occurence par exemple. Si tu cherche toutes les utilisation d'une variable globale dans l'appel d'une fonction (pour voir a quoi elle sert ...):

Code :
  1. int globale;
  2.     (...)
  3.     globale = 10;
  4.     (...)
  5.     bidon(globale)
  6.     (...)
  7.     bidule( globale );


 
alors t'as remarque que souvent une fonction colle ses parametres aux parenthese
Tu fait rechercher "(globale" et tu zappes l'appel de bidule ...
si tu fais "globale" tout seul, tu te cognes en plus les utilisations dont tu te fous ...
 
Considère un projet de plusieurs milliers de lignes ... ca peut parraitre grottesque, mais on a assez vite fait de tromber sur une sittuation comme celle-ci
 
Apres le nommage des variables ... je suis un peu plus laxiste ...


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

Marsh Posté le 13-03-2002 à 14:44:51    

Perso, si j'utilises des conventions et que je m'y tiens c'est parce que :
- c'est horripilant de lire un source atroce !
- je considère un source comme une oeuvre d'art. Si ça marche bien c'est bien, si en plus c'est bien fait et propre dedans, c'est mieux.

Reply

Marsh Posté le 13-03-2002 à 14:49:30    

>> (je deteste la premiere accolade en fin de ligne, question de gout)  
 
me too :)
 
>> ca peut parraitre grottesque, mais on a assez vite fait de tromber sur une sittuation comme celle-ci  
 
je n'utilise que vc++ qui a un moteur de regex pour la recherche (et qui marche sur de multiples fichiers), donc ton problème est vite réglé - espace ou pas.

Reply

Marsh Posté le 13-03-2002 à 14:49:56    

Moi j'apprécie beaucoup les conventions de nomage pour les nom fonction et de variable. En effet, quand je veut appeler la fonction qui : place le machin bleu sur la gauche. Je n'ai pas envie de me casser la tete à savoit si la fonction s'ecrit PlaceMachinBleuGauche ou d'une autre facon. Je sais quelle est la fonction, je connais ses paramètre, pourquoi je devrais me déplacer dans le code pour savoir s'il faut l'écrire avec des _ ou sans, avec des majuscules ou sans ...

Reply

Marsh Posté le 13-03-2002 à 14:54:33    

Vivi ... le "goto definition of ..." ou la liste des classes / fonctions, c'est en effet ... excellentissime.
Mais tout le monde n'a pas VC++ ... ou alors quand tu ouvres vite fait un fichier source (par exemple apres avoir reupéré des sources qui compilent sous Linux) et que comme t'as pas de projet créé, VC++ il peut rien pour toi, ...
Et comme le dit Cherrytree, c'est plus beau comme ca!


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

Marsh Posté le 13-03-2002 à 14:57:42    

HelloWorld a écrit a écrit :

 
Mais tout le monde n'a pas VC++ ...  




 
y a ça aussi dans Borland C++ Builder & Delphi :p


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 13-03-2002 à 15:01:28    

Mais je veux pas faire " goto definition of", je veux rester ou je suis pour taper ma fonction :)
 
La completion automatique des nom de fontion ca existe aussi sous nux avec les bons environnement de dev. mais après tout, je pense que ca encourage les gens à etre paresseux avec leur convention de nommage ;)

Reply

Marsh Posté le 13-03-2002 à 15:08:20    

HelloWorld > je parlais juste de la recherche dans ton cas précis. au lieu de chercher globalVar, tu peux chercher [parenthèse?][espace?]globalvar[espace?][virgule?] par ex. je dis qu'il y a ça sous vc++, je suppose qu'il doit y avoir au moins 40 versions de la chose paramètrable différemment sous emacs.
 
par contre je ne mets jamais d'espace dans les appels de fonctions. parfois dans les if/while lorsque l'expression est assez complexe, sinon c'est juste keyword (expression operateur expression).

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

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