IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C Discussion :

Echelle de Goret


Sujet :

C

  1. #41
    Expert éminent sénior
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Points : 20 985
    Points
    20 985
    Par défaut
    Citation Envoyé par Gruik
    Jveux dire, dans ce cas par exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    int func (const char * search) {
      int k;
      for (k = 0; k < TAB_NB_ELT; k++)
         if (!strcmp(search, my_tab[k].str))
           return k;
      return -1;
    }
    est-ce si grave?
    Ca dépend comment le code évolue...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    int func (const char * search, size_t size) 
    {
       int k = -1;
       size_t i;
       for (i = 0; i < size; i++)
       {
          if (strcmp (search, my_tab[i].str) == 0)
          {
             k = i;
             break;
          }
       }
       return k;
    }
    voire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    int func (const char * search, size_t size) 
    {
       int k = -1;
       size_t i;
       for (i = 0; i < size && k == -1; i++)
       {
          if (strcmp (search, my_tab[i].str) == 0)
          {
             k = i;
          }
       }
       return k;
    }
    Si on aime pas le break.

    C'est compliqué ?
    Pas de Wi-Fi à la maison : CPL

  2. #42
    Membre expérimenté
    Avatar de Gruik
    Profil pro
    Développeur Web
    Inscrit en
    Juillet 2003
    Messages
    1 566
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 566
    Points : 1 727
    Points
    1 727
    Par défaut
    Je trouve personnellement le break plus choquant que 2 return

  3. #43
    Expert éminent sénior
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Points : 20 985
    Points
    20 985
    Par défaut
    Citation Envoyé par Gruik
    Au fait, je pensais faire un gros topic sur ce forum sur "comment bien programmer en C" où tout le monde pourrait participer et on
    STOP ! Machine à troller à l'infini...

    Cette echelle, c'est la mienne. Je la propose, je l'amende quand des remarques me semble pertinentes, mais j'en suis seul responsable et le but n'est pas l'imposer, même de manière consensuelle.

    Consensus, signifie compromission... Pas de ça chez moi. J'ai des convictions !

    Chacun est libre de l'utiliser ou non comme boin lui semble. le tout est d'être cohérent, et le fait d'écrire les choses donne de la cohérence...
    Pas de Wi-Fi à la maison : CPL

  4. #44
    Membre expérimenté
    Avatar de Gruik
    Profil pro
    Développeur Web
    Inscrit en
    Juillet 2003
    Messages
    1 566
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 566
    Points : 1 727
    Points
    1 727
    Par défaut
    Citation Envoyé par Emmanuel Delahaye
    STOP ! Machine à troller à l'infini...
    Le but sera pas de fixer LA BONNE TECHNIQUE mais de dire "ça devrait être comme ci/comme ça, mais certains preferent comme ça car.."

    Comme dans les RFC HTTP ou MIME ou Mail, ils disent "MAY" ou "SHOULD" en majuscule pour signifier que ça devrait être comme ça mais que c'est pas obligé

    Meme si c'est casse gueule, au moins on echange nos points de vue et on apprend un peu plus

  5. #45
    Expert éminent sénior
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Points : 20 985
    Points
    20 985
    Par défaut
    Citation Envoyé par Jean-Marc.Bourguet
    Ah, ne pas indenter -- perso, a ce niveau de non respect des lecteurs je ne prends generalement meme pas la peine de repondre sur Internet,
    Un peu radical...Il n'est pas forcément responsable (html vire les espaces en tête, les espace multiples...). Je réindente automatiquement le code, alors ça ne me dérange pas plus que ça... De toutes façons, l'indentation du posteur original ne sera jamais celle que j'attend... Ca reste un des derniers degrés de liberté... Evidemment, il faut être cohérent et utiliser un indenteur (Je recommande GNU Indent 1.91, car les versions suivantes font de drôles de choses...)
    et je n'ai jamais vu dans ma vie professionnelle ou j'ai pourtant vu bien des choses, mais au niveau indentation, le pire que j'ai vu c'est l'utilisation d'un melange de tabulation et d'espaces ne fonctionnant correctement qu'avec une tabulation mise a 5 caracteres pour une partie du code et a 8 caracteres pour une autre dans un fichier qu'on aurait mieux fait de scinder avant que je ne le fasse -- c'est mieux que de tout mettre dans le main(), ce qui m'est deja arrive pour des petits programmes oneshot, et qui arrive sans probleme dans des exercices ou dans du code reduit pour mettre en evidence un probleme.
    Oui, bien sûr, c'est à rapprocher du "Fonction de plus d'une page visible". Je ne parle évidemment pas des snippets qui sont évidemment faits pour ça.
    En fait, je ne vois pas de necessite de faire une difference entre main et les autres fonctions, pour lesquelles on a "Fonction de plus d'une page visible" qui est du force 5 d'apres Emmanuel...
    Ce que je stigmatise c'est le projet de fin d'année de 10.000 lignes dans un seul main() Ca s'est déjà vu !
    Pas de Wi-Fi à la maison : CPL

  6. #46
    Expert éminent sénior
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Points : 20 985
    Points
    20 985
    Par défaut
    Citation Envoyé par Gruik
    Genre, pour aligner ceci?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
        if (condition 1
            && condition 2
            && condition 3)
    Joli.
    Pas de Wi-Fi à la maison : CPL

  7. #47
    Expert éminent

    Inscrit en
    Novembre 2005
    Messages
    5 145
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 5 145
    Points : 6 911
    Points
    6 911
    Par défaut
    Citation Envoyé par Gruik
    Ok, parce que j'ai une fonctionnalité dans mon editeur (PSPad) c'est qu'on peut lui dire si les tabulations insérées doivent être converties en espace ou rester en tabs, et si elles restent en tabs on peut lui dire combiein de caracteres elles doivent prendre
    Donc j'ai pensé que la tabulation était mieux qu'un nombre fixe d'espace qd on travaille à plusieurs
    Classique; je n'ai pas vu beaucoup d'editeur destine a la programmation qui ne le permettait pas.
    Les MP ne sont pas là pour les questions techniques, les forums sont là pour ça.

  8. #48
    Membre expérimenté
    Avatar de Gruik
    Profil pro
    Développeur Web
    Inscrit en
    Juillet 2003
    Messages
    1 566
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 566
    Points : 1 727
    Points
    1 727
    Par défaut
    Citation Envoyé par Emmanuel Delahaye
    Joli.
    Quoi, c'est goret de faire ça?

  9. #49
    Expert éminent sénior
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Points : 20 985
    Points
    20 985
    Par défaut
    Citation Envoyé par Gruik
    Ok, parce que j'ai une fonctionnalité dans mon editeur (PSPad) c'est qu'on peut lui dire si les tabulations insérées doivent être converties en espace ou rester en tabs, et si elles restent en tabs on peut lui dire combiein de caracteres elles doivent prendre
    Donc j'ai pensé que la tabulation était mieux qu'un nombre fixe d'espace qd on travaille à plusieurs
    Ca demande des capacités d'interprétation bien plus complexes que ce que sait faire une bête imprimante ou une fenêtre de debugger ou ton prochain éditeur basique imposé pour fonctionner sur ton projet pour DS9000...

    Je défend une certaine simplicité...
    Pas de Wi-Fi à la maison : CPL

  10. #50
    Expert éminent sénior
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Points : 20 985
    Points
    20 985
    Par défaut
    Citation Envoyé par Gruik
    Quoi, c'est goret de faire ça?
    Non, c'est bien. (je fais pareil hé hé)
    Pas de Wi-Fi à la maison : CPL

  11. #51
    Expert éminent

    Inscrit en
    Novembre 2005
    Messages
    5 145
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 5 145
    Points : 6 911
    Points
    6 911
    Par défaut
    (Y a-t'il moyen de garder plus d'un niveau de citation?)

    Citation Envoyé par Emmanuel Delahaye
    Citation Envoyé par Jean-Marc Bourguet
    Je ne lis meme pas la plupart des messages qui ont du code non indente
    Un peu radical...Il n'est pas forcément responsable (html vire les espaces en tête, les espace multiples...).
    Peut-etre. Sur developpez, il y a moyen de previsualiser son message. C'est pas complique.

    Ce que je stigmatise c'est le projet de fin d'année de 10.000 lignes dans un seul main() Ca s'est déjà vu !
    Je ne vois pas pourquoi c'est pire pour main que pour une autre fonction.

    En longueur, le pire que j'ai vu dans ma vie professionnelle avec une fonction longue de maniere non triviale (pas un switch de 256 cas avec 6 lignes par cas dont 2 avec uniquement des accolades) et non genere automatiquement (genre yacc), c'est 1800 lignes avec au plus profond 12 niveaux d'imbrications. Incomprehensible, ca commencait par 40 lignes de declaration de variables genre tmp1, tmp2,...
    Les MP ne sont pas là pour les questions techniques, les forums sont là pour ça.

  12. #52
    Membre expérimenté
    Avatar de Gruik
    Profil pro
    Développeur Web
    Inscrit en
    Juillet 2003
    Messages
    1 566
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 566
    Points : 1 727
    Points
    1 727
    Par défaut
    Citation Envoyé par Jean-Marc.Bourguet
    En longueur, le pire que j'ai vu avec une fonction longue de maniere non triviale (pas un switch de 256 cas avec 6 lignes par cas dont 2 avec uniquement des accolades) et non genere automatiquement (genre yacc), c'est 1800 lignes avec au plus profond 12 niveaux d'imbrications. Incomprehensibles, ca commencait par 40 lignes de declaration de variables genre tmp1, tmp2,...
    Du grand art !

  13. #53
    Expert éminent sénior
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Points : 20 985
    Points
    20 985
    Par défaut
    Citation Envoyé par Jean-Marc.Bourguet
    Peut-etre. Sur developpez, il y a moyen de previsualiser son message. C'est pas complique.
    C'est compliqué pour beaucoup de débutants... (Et on me trouve 'agressif', 'intolérant', brrr...). A ma connaissance, le problème subsiste sur Usenet avec Google groups, par exemple (ben oui, ça existe aussi...)
    Je ne vois pas pourquoi c'est pire pour main que pour une autre fonction.
    Il y au moins eu une tentative d'écrire au moins une fonction, on passe en Force 9...!
    Pas de Wi-Fi à la maison : CPL

  14. #54
    Expert éminent

    Inscrit en
    Novembre 2005
    Messages
    5 145
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 5 145
    Points : 6 911
    Points
    6 911
    Par défaut
    Citation Envoyé par Emmanuel Delahaye
    C'est compliqué pour beaucoup de débutants... (Et on me trouve 'agressif', 'intolérant', brrr...).
    Il y a un niveau en dessous duquel je trouve le média inadapté, donc j'ignore purement et simplement... et c'est alors difficile de méprendre ma réaction pour une attaque. Tandis que se faire montrer ses erreurs...

    A ma connaissance, le problème subsiste sur Usenet avec Google groups, par exemple (ben oui, ça existe aussi...)
    C'est à moi que tu dis cela?

    Il y au moins eu une tentative d'écrire au moins une fonction, on passe en Force 9...!
    Ah, tu va relever la force de cet item? Note que pour moi c'est pire, on a montré qu'on connaissait le moyen de structurer mieux et on refuse de l'employer
    Les MP ne sont pas là pour les questions techniques, les forums sont là pour ça.

  15. #55
    Membre habitué Avatar de nicolas66
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    326
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 326
    Points : 146
    Points
    146
    Par défaut
    Perso s'il y une chose que je ne supporte pas dans un code c'est le mauvais placement des accolades :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    if( TotoVaDormir() ) {
            if( SpidermanAimeLeFromage() ) {
                    for( i=0; i<NombreDePommes; i++ ) {
                            Prout();
                    }
            }
    }
    Dans l'exemple ci-dessus, les accolades ne délimitent plus aussi clairement les différents blocs de code et perdent leur rôle. Du coup, je suis obligé de réécrire tout code écrit de cette manière ...
    Athlon 6000+ Dual Core & GeForce 8600 GT -- Ubuntu Gutsy

  16. #56
    Expert éminent sénior
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Points : 20 985
    Points
    20 985
    Par défaut
    Citation Envoyé par nicolas66
    Perso s'il y une chose que je ne supporte pas dans un code c'est le mauvais placement des accolades :
    <...>
    Du coup, je suis obligé de réécrire tout code écrit de cette manière ...
    Bah, un coup d'indenteur et hop :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    if (TotoVaDormir ())
    {
       if (SpidermanAimeLeFromage ())
       {
          for (i = 0; i < NombreDePommes; i++)
          {
             Prout ();
          }
       }
    }
    ftp://ftp.cs.univ-paris8.fr/mirrors/ftp.gnu.org/indent

    J'utilise la version 1.91...
    Pas de Wi-Fi à la maison : CPL

  17. #57
    Expert éminent sénior
    Avatar de Skyounet
    Homme Profil pro
    Software Engineer
    Inscrit en
    Mars 2005
    Messages
    6 380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Software Engineer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 6 380
    Points : 13 380
    Points
    13 380
    Par défaut
    Citation Envoyé par nicolas66
    Perso s'il y une chose que je ne supporte pas dans un code c'est le mauvais placement des accolades :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    if( TotoVaDormir() ) {
            if( SpidermanAimeLeFromage() ) {
                    for( i=0; i<NombreDePommes; i++ ) {
                            Prout();
                    }
            }
    }

    Alors tout d'abord ce n'est pas un mauvais placement des accolades, c'est simplement un placement que tu n'aimes pas, et il y a une grande différence
    Certaines personnes trouvent cette présentation très lisible et c'est tant pieux pour eux.

    Dans l'exemple ci-dessus, les accolades ne délimitent plus aussi clairement les différents blocs de code et perdent leur rôle. Du coup, je suis obligé de réécrire tout code écrit de cette manière ...
    Je sais pas si tu es au courant mais des outils existent pour passer d'une presentation à une autre... (indent entre autre)
    Introduction à Silverlight 4 (new) ; Localisation d'une application Silverlight (new) ;
    Mon espace perso[/B]

    La connaissance s’acquiert par l’expérience, tout le reste n’est que de l’information. Albert Einstein[/SIZE]

  18. #58
    Débutant Avatar de miron
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    479
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 479
    Points : 291
    Points
    291
    Par défaut
    Citation Envoyé par Emmanuel Delahaye
    Les autres ne sont pas bien?
    Elles ont des problemes?
    Prenez le temps d'aller vite...

    Programme sous Windows, en C avec Code::Blocks, en Java JRE 1.6. avec Eclipse, en PHP/HTML/CSS avec Dreamweaver CS5 ou NotePad++ et en VBA sous avec Access 2010, Excel 2010, Word 2010 et Outlook 2010.

  19. #59
    Membre expérimenté
    Avatar de Gruik
    Profil pro
    Développeur Web
    Inscrit en
    Juillet 2003
    Messages
    1 566
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 566
    Points : 1 727
    Points
    1 727
    Par défaut
    Utilisation du type int ou long pour les tailles ou nombre d'objets.
    Y a t il une vraie definition du sens du size_t ou c'est libre d'interpretation?

    A un moment j'ai voulu mettre des size_t partout, mais finalement je me suis dis que ça ne devait servir que pour les tailles reelles (c a d, ce qui est retourné par sizeof par ex), pas pour les nb d'elements de tableaux. Car la taille d'un tableau peut vouloir dire : sa taille en memoire ou sa taille en nb d'elements.

  20. #60
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 369
    Points : 41 519
    Points
    41 519
    Par défaut
    ça sert aussi pour les tailles de chaînes, il me semble (aussi bien en char qu'en wchar_t).
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

Discussions similaires

  1. [PHP 5.4] conception squelette objet : quelle note sur l'echelle du goret?
    Par balja dans le forum Langage
    Réponses: 2
    Dernier message: 05/02/2013, 13h21
  2. [excel] echelle dynamique dans un graph
    Par shirya dans le forum Excel
    Réponses: 1
    Dernier message: 17/10/2005, 17h49
  3. [JTree] Echelle
    Par Micky1407 dans le forum Composants
    Réponses: 1
    Dernier message: 18/07/2005, 13h11
  4. echelle et openGl
    Par pfourtz dans le forum OpenGL
    Réponses: 13
    Dernier message: 03/05/2005, 23h00
  5. Réponses: 2
    Dernier message: 17/05/2002, 20h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo