+ Répondre à la discussion Actualité déjà publiée
Page 8 sur 25 PremièrePremière ... 45678910111218 ... DernièreDernière
  1. #141
    Membre Expert
    Profil pro
    Développeur Java Indépendant
    Inscrit en
    mai 2007
    Messages
    1 335
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Java Indépendant

    Informations forums :
    Inscription : mai 2007
    Messages : 1 335
    Points : 1 651
    Points
    1 651

    Par défaut

    Citation Envoyé par jabbounet Voir le message
    moi aussi je ne suis pas convaincu
    Pareil.
    Citation Envoyé par sunseb7 Voir le message
    Quelle solution élégante pour éviter ce problème au fait ? Car c'est vrai qu'on se retrouve parfois vite avec beaucoup de "echo"...

    Après pour ce qui est de mélanger traitement et HTML, c'est sûr que c'est juste infernal à maintenir ensuite...
    Je pense que la solution est d'enlever les "<?php ?>" et de mettre directement en html, quitte à mettre des <?php ?> pour les quelques variables à insérer.
    Yoshi

    PS : tous les propos tenus dans le message ci-dessus sont à préfixer avec "A mon humble avis", "Je pense que". Il serait inutilement fastidieux de le rappeler à chaque phrase.

  2. #142
    Membre Expert
    Inscrit en
    juillet 2006
    Messages
    1 537
    Détails du profil
    Informations forums :
    Inscription : juillet 2006
    Messages : 1 537
    Points : 2 039
    Points
    2 039

    Par défaut

    Citation Envoyé par Herve-Loiret Voir le message
    Je pense que la solution est d'enlever les "<?php ?>" et de mettre directement en html, quitte à mettre des <?php ?> pour les quelques variables à insérer.
    Ou de faire des templates, comme font les gens civilisés qui n'ont pas oublié le concept de MVC sur le bord de la route.

  3. #143
    r0d
    r0d est déconnecté
    Expert Confirmé Sénior

    Profil pro
    Inscrit en
    août 2004
    Messages
    4 165
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : août 2004
    Messages : 4 165
    Points : 5 904
    Points
    5 904

    Par défaut

    Une toute fraîchement trouvée (hier). Ce n'est pas ne bourde énorme, mais ça m'a tellement énervé que je vous la poste:
    Code cplusplus : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    // AppTypes.h: LE fichier inclus absolument partout dans l'application
    
    #include <vector>
    // autres includes
    
    using namespace std;
    
    // code
    using namespace std dans un header (qui en plus va être inclus partout dans l'appli), cela signifie que tous les fichiers sources vont se farcir le namespace std. Ce qui signifie que nulle part je n'aurai le droit de déclarer une variable qui existe déjà dans la lib standard. Et le problème c'est qu'il y a quand-même pas mal de variables déclarée dans cette lib standard. On n'a donc pas le droit non plus d'utiliser des libs qui utilisent des variables déclarée dans la lib standard.

    Et comme il s'agit d'un projet déjà bien avancé et assez imposant, la suppression de ce using namespace std va impliquer pas mal de modifs et de tests (une modif n'est jamais anodine)... et dans l'histoire, tout ce que j'ai gagné c'est la haine de mes collègues programmeurs
    L'expérience elle-même l'atteste également chaque jour par tant de si lumineux témoignages que tout le monde a le mot à la bouche: l'Homme est un Dieu pour l'Homme.
    Baruch Spinoza, Éthique V, prop. XXXV, ~1670 apr. JC.

    Il est encore permis de rêver d'un monde sillonné [...] par des hommes occupés, le temps de leur passage sur terre, à l'admirer plutôt qu'à le détruire.
    François Maspero, Les Abeilles et la Guêpe.

  4. #144
    Rédacteur

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    octobre 2004
    Messages
    9 502
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : octobre 2004
    Messages : 9 502
    Points : 31 893
    Points
    31 893

    Par défaut

    Citation Envoyé par Arnaud F. Voir le message
    Une fois j'ai eu droit à un super :

    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    UPDATE champ1 = champ1 FROM uneTable

    Je me suis toujours demandé son utilité (surtout en dehors de toute transaction ...)
    Et puis surtout, normalement c'est

    UPDATE <table> SET <champ>=X

    Et non UPDATE FROM

    On est passé tous à côté
    Ce message vous a été utile ? Si oui, cliquez sur

  5. #145
    Membre à l'essai
    Profil pro
    Inscrit en
    mars 2008
    Messages
    20
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : mars 2008
    Messages : 20
    Points : 23
    Points
    23

    Par défaut

    En java,

    Je vois couramment des cast en classe fille pour appeler une méthode de la classe mère :
    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
    16
    class A {
      void callme() {}
    }
    
    class A1 extends A {
      void callme() {
        // traitement 1
      }
    }
    
    class A2 extends A {
      void callme() {
        // traitement 2
      }
    }
    à l'appel :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    A a;
    if (a instanceof A1) {
      ((A1) a).callme();
    } else if (a instanceof A2) {
      ((A2) a).callme();
    } else {
      a.callme();
    }
    Polymor-quoi???

  6. #146
    Membre à l'essai
    Profil pro
    Inscrit en
    mars 2008
    Messages
    20
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : mars 2008
    Messages : 20
    Points : 23
    Points
    23

    Par défaut

    Moins grave mais lourd, des classes qui se ressemblent, toutes portent une méthode update().

    à l'appel :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    void updateAll() {
    instance1.update();
    instance2.update();
    instance3.update();
    instance4.update();
    // ... 25 fois
    }
    Interface tu connais?
    Ecouteur/écouté ?

  7. #147
    Membre habitué
    Inscrit en
    mars 2007
    Messages
    135
    Détails du profil
    Informations forums :
    Inscription : mars 2007
    Messages : 135
    Points : 112
    Points
    112

    Par défaut

    Citation Envoyé par fridobox Voir le message
    En java,

    Je vois couramment des cast en classe fille pour appeler une méthode de la classe mère :
    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
    16
    class A {
      void callme() {}
    }
    
    class A1 extends A {
      void callme() {
        // traitement 1
      }
    }
    
    class A2 extends A {
      void callme() {
        // traitement 2
      }
    }
    à l'appel :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    A a;
    if (a instanceof A1) {
      ((A1) a).callme();
    } else if (a instanceof A2) {
      ((A2) a).callme();
    } else {
      a.callme();
    }
    Polymor-quoi???
    Pas mal comme perle aussi. Mais bon peut être ce sont des gens qui viennent du C++ qui savant pas que les méthodes sont virtuelles par défaut en java ...

    J'essaie de leur trouver des excuses, car je suis gentil

  8. #148
    Membre à l'essai
    Profil pro
    Inscrit en
    mars 2008
    Messages
    20
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : mars 2008
    Messages : 20
    Points : 23
    Points
    23

    Par défaut

    Une perle : le stockage de this casté en classe mère :

    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
    16
    17
    18
    19
    20
    21
    22
    23
    24
    class Mere {
      void callme() {}
    }
    
    class Fille extends Mere {
      
      Mere maman;
    
      MaClass() {
        maman = (Mere) this;
      }
    
      @Override
      void callme() { 
         // ... 
      }
    
      void other() {
        if(maman != null) {
          maman.callme();
        }
      } 
    }
    En fait, c'est une tentative d'appeler la méthode mère sans qu'elle soit surchargée dans la classe fille

    Droit à la palme d'or(dure) ?

    Le test si maman != null est énorme non?

  9. #149
    Membre à l'essai
    Profil pro
    Inscrit en
    mars 2008
    Messages
    20
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : mars 2008
    Messages : 20
    Points : 23
    Points
    23

    Par défaut

    Citation Envoyé par inconnu652000 Voir le message
    Pas mal comme perle aussi. Mais bon peut être ce sont des gens qui viennent du C++ qui savant pas que les méthodes sont virtuelles par défaut en java ...

    J'essaie de leur trouver des excuses, car je suis gentil
    Malheureusement, ce sont des développeurs java 100%

  10. #150
    Expert Confirmé Sénior

    Homme Profil pro
    SDE
    Inscrit en
    août 2007
    Messages
    2 014
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : SDE

    Informations forums :
    Inscription : août 2007
    Messages : 2 014
    Points : 4 499
    Points
    4 499

    Par défaut

    Citation Envoyé par fridobox Voir le message
    Malheureusement, ce sont des développeurs java 100%
    Développeur ou bidouilleur ?
    http://alaindefrance.wordpress.com
    Certifications : SCJP6 - SCWCD5 - SCBCD5 - SCMAD1
    SDE at BitTitan

  11. #151
    Membre Expert
    Inscrit en
    juillet 2006
    Messages
    1 537
    Détails du profil
    Informations forums :
    Inscription : juillet 2006
    Messages : 1 537
    Points : 2 039
    Points
    2 039

    Par défaut

    100% Java 0% modélisation

  12. #152
    Expert Confirmé Sénior

    Homme Profil pro
    SDE
    Inscrit en
    août 2007
    Messages
    2 014
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : SDE

    Informations forums :
    Inscription : août 2007
    Messages : 2 014
    Points : 4 499
    Points
    4 499

    Par défaut

    Là quand même à ce stade , c'est triste de pas connaitre le compotement de son langage face à la polymorphie.
    http://alaindefrance.wordpress.com
    Certifications : SCJP6 - SCWCD5 - SCBCD5 - SCMAD1
    SDE at BitTitan

  13. #153
    Membre habitué
    Inscrit en
    mars 2007
    Messages
    135
    Détails du profil
    Informations forums :
    Inscription : mars 2007
    Messages : 135
    Points : 112
    Points
    112

    Par défaut

    Citation Envoyé par Alain Defrance Voir le message
    Là quand même à ce stade , c'est triste de pas connaitre le compotement de son langage face à la polymorphie.
    Oui bon alors ne soyons pas dur !!!

    Je me souviens avoir réinventer le principe des sémaphores en C++ quand j'ai débuté normal je suis pas informaticien à la base donc je ne connaissais rien au multithreading ....
    Le pire c'est que ça a marché !! sauf 2 ou 3 fois par mois lol véridique ! ils se sont arraché les cheveux avec mon "bug" ...
    Donc je me tais et je fais profil bas lol



  14. #154
    Expert Confirmé Sénior

    Homme Profil pro
    SDE
    Inscrit en
    août 2007
    Messages
    2 014
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : SDE

    Informations forums :
    Inscription : août 2007
    Messages : 2 014
    Points : 4 499
    Points
    4 499

    Par défaut

    Citation Envoyé par inconnu652000 Voir le message
    Oui bon alors ne soyons pas dur !!!

    Je me souviens avoir réinventer le principe des sémaphores en C++ quand j'ai débuté normal je suis pas informaticien à la base donc je ne connaissais rien au multithreading ....
    Le pire c'est que ça a marché !! sauf 2 ou 3 fois par mois lol véridique ! ils se sont arraché les cheveux avec mon "bug" ...
    Donc je me tais et je fais profil bas lol


    Pour ma part j'ai également réinventé la roue un bon nombre de fois .

    Mais bon là c'est une méconnaissance du langage en lui même ca crain .
    http://alaindefrance.wordpress.com
    Certifications : SCJP6 - SCWCD5 - SCBCD5 - SCMAD1
    SDE at BitTitan

  15. #155
    r0d
    r0d est déconnecté
    Expert Confirmé Sénior

    Profil pro
    Inscrit en
    août 2004
    Messages
    4 165
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : août 2004
    Messages : 4 165
    Points : 5 904
    Points
    5 904

    Par défaut

    Ca a déjà été dit, ici et ailleurs, mais il est toujours bon de le rappeler:
    Tout le monde fait des bourdes, c'est humain. L'important c'est de savoir s'en rendre compte - accepter les critiques, se remettre en question quand il y a des bugs, prendre le temps de lire sur le sujet (la doc, du bon code, les specs, developpez.com...), prendre le temps de discuter, bref, ne pas se jeter sur le code sans prendre un minimum de recul - et s'en souvenir pour ne plus reproduire ces erreurs.

    Il y a quelqu'un qui a ça dans sa signature, à peu de chose près: "un homme fort n'est pas quelqu'un qui ne tombe jamais, mais quelqu'un qui sait se relever"
    L'expérience elle-même l'atteste également chaque jour par tant de si lumineux témoignages que tout le monde a le mot à la bouche: l'Homme est un Dieu pour l'Homme.
    Baruch Spinoza, Éthique V, prop. XXXV, ~1670 apr. JC.

    Il est encore permis de rêver d'un monde sillonné [...] par des hommes occupés, le temps de leur passage sur terre, à l'admirer plutôt qu'à le détruire.
    François Maspero, Les Abeilles et la Guêpe.

  16. #156
    Membre Expert Avatar de Jidefix
    Profil pro
    Inscrit en
    septembre 2006
    Messages
    730
    Détails du profil
    Informations personnelles :
    Âge : 30
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations forums :
    Inscription : septembre 2006
    Messages : 730
    Points : 1 011
    Points
    1 011

    Par défaut

    Citation Envoyé par r0d Voir le message
    Ca a déjà été dit, ici et ailleurs, mais il est toujours bon de le rappeler:
    Tout le monde fait des bourdes, c'est humain. L'important c'est de savoir s'en rendre compte - accepter les critiques, se remettre en question quand il y a des bugs, prendre le temps de lire sur le sujet (la doc, du bon code, les specs, developpez.com...), prendre le temps de discuter, bref, ne pas se jeter sur le code sans prendre un minimum de recul - et s'en souvenir pour ne plus reproduire ces erreurs.

    Il y a quelqu'un qui a ça dans sa signature, à peu de chose près: "un homme fort n'est pas quelqu'un qui ne tombe jamais, mais quelqu'un qui sait se relever"
    Perso j'ai souvent vu des nouveaux projets qu'on confiait aux stagiaires pour pas détourner des ressources.
    Au fil du temps le projet, s'il marche pas trop mal, finit par être couramment utilisé, mais le mal est fait: c'est quand même un stagiaire qui l'a fait, sans que personne ne fasse de relecture de code.
    Va expliquer le besoin de repasser sur du code qui marchouille dans une grosse boite (je travaille dans une banque dont le logo devrait plus être un mammouth qu'un écureuil je précise)

    Donc on se retrouve avec une montagne de code bizarre qui marche mais qui est incompréhensible et inmaintenable.


    Allez un petit exemple pour la route une tite web-application, de la part de quelqu'un qui trouve que le javascript, c'est vachement mieux que l'HTML:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <body onLoad="showDF(year, month, day);">
    
    ...
    <div id='td-search-date'></div> 
    ...
    Avec le détail de la fonction javascript:
    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
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    function showDF(year,month,day,debut,fin) {
    	document.getElementById("td-search-date").innerHTML=getDayhtml(year,month,day,debut,fin);
    }
    
    function getDayhtml(year,month,day,debut,fin) {
    dayHTML = "<span id='divDay' class='PortletNavigate_p1_smenu_dominante2' style='visibility:visible;position:relative'>"+
    	  "<table width='100%' height=''>"+
    	  "<tr>"+
    	  "<td valign='top'>"+
              "<table width='200' border='0'>"+
    	  "<tr>"+
    	  "<td width='200' height='9' class='menu_haut'><img src='/comptage/web/charte-rte/images/spacer.gif' width='200' height='9'></td>"+
    	  "</tr>"+
    	  "<tr>"+
    	  "<td valign='top' class='menu_milieu'>"+
    	  "<table width='200' height='20' cellpadding='0' cellspacing='0' border='0'>"+
    	  "<tr>"+ 
    	  "<td width='4'><img src='/comptage/web/charte-rte/images/spacer.gif' width='4' height='15'>"+
    	  "</td>"+
    	  "<td class='dataOther' width='100' colspan=2>"+debut+
    	  "</td>"+
    	  "</tr>"+
    	  "<tr>"+
    	  "<td width='4'><img src='/comptage/web/charte-rte/images/spacer.gif' width='4' height='15'>"+
    	  "</td>"+
    	  "<td class='titremenu_gauche' colspan=2 nowrap=nowrap>"+
    	  "<INPUT type=TEXT NAME=jourObjetDate1 class='corps_de_texte_petit_gris' size=2 maxlength=2 value='"+day+"'>/"+
    	  "<INPUT type=TEXT NAME=moisObjetDate1 class='corps_de_texte_petit_gris' size=2 maxlength=2 value='"+month+"'>/"+
    	  "<INPUT type=TEXT NAME=anneeObjetDate1 class='corps_de_texte_petit_gris' size=4 maxlength=4 value='"+year+"'>&nbsp;&nbsp;"+
    	  "<INPUT type=TEXT NAME=heureObjetDate1 class='corps_de_texte_petit_gris' size=2 maxlength=2 value='0'>:"+
    	  "<INPUT type=TEXT NAME=minuteObjetDate1 class='corps_de_texte_petit_gris' size=2 maxlength=2 value='0'>:"+
    		"<INPUT type=TEXT NAME=secondeObjetDate1 class='corps_de_texte_petit_gris' size=2 maxlength=2 value='0'>"+
    	  "</td>"+
    	  "</tr>"+															
    	  "</table>"+
    	  "<table width='200' height='20' cellpadding='0' cellspacing='0' border='0'>"+
    	  "<tr>"+
    	  "<td width='4'><img src='/comptage/web/charte-rte/images/spacer.gif' width='4' height='15'></td>"+
    	  "<td class='dataOther' width='100' colspan=2>"+fin+
    	  "</td>"+
    	  "</tr>"+
    	  "<tr>"+ 
    	  "<td width='4'><img src='/comptage/web/charte-rte/images/spacer.gif' width='4' height='15'></td>"+
    	  "<td class='titremenu_gauche' colspan=2 nowrap=nowrap>"+
    	  "<INPUT type=TEXT NAME=jourObjetDate2 class='corps_de_texte_petit_gris' size=2 maxlength=2 value='"+day+"'>/"+
    	  "<INPUT type=TEXT NAME=moisObjetDate2 class='corps_de_texte_petit_gris' size=2 maxlength=2 value='"+month+"'>/"+
    	  "<INPUT type=TEXT NAME=anneeObjetDate2 class='corps_de_texte_petit_gris' size=4 maxlength=4 value='"+year+"'>&nbsp;&nbsp;"+
    	  "<INPUT type=TEXT NAME=heureObjetDate2 class='corps_de_texte_petit_gris' size=2 maxlength=2 value='23'>:"+
    	  "<INPUT type=TEXT NAME=minuteObjetDate2 class='corps_de_texte_petit_gris' size=2 maxlength=2 value='59'>:"+
    		"<INPUT type=TEXT NAME=secondeObjetDate2 class='corps_de_texte_petit_gris' size=2 maxlength=2 value='59'>"+
    	  "</td>"+
    	  "</tr>"+
    	  "</table>"+
    	  "</td>"+
    	  "</tr>"+
    	  "<tr>"+
    	  "<td width='200' height='9' class='menu_bas'><img src='/comptage/web/charte-rte/images/spacer.gif' width='200' height='9'></td>"+
    	  "</tr>"+
    	  "</table>"+			
    	  "</td>"+
    	  "</tr>"+
    	  "</table>"+
    	  "</span>"+
    	  "</td>"+
    	  "</tr>"+
    	  "</table>"+
    		"<input type='hidden' name='dateType' value='parjour'>";
    	return dayHTML;
    }
    Veuillez agréer nos sentiments les plus distingués. Soyez assurés de notre entière collaboration, bien à vous pour toujours et à jamais dans l'unique but de servir l'espérance de votre satisfaction, dis bonjour à ton père et à ta mère, bonne pétanque, mets ton écharpe fais froid dehors.

  17. #157
    Expert Confirmé Sénior
    Profil pro
    Inscrit en
    décembre 2007
    Messages
    3 519
    Détails du profil
    Informations personnelles :
    Localisation : France, Val d'Oise (Île de France)

    Informations forums :
    Inscription : décembre 2007
    Messages : 3 519
    Points : 12 480
    Points
    12 480

    Par défaut

    dans le même style que ça.....

    Citation Envoyé par Jidefix Voir le message
    (.../...)
    Au fil du temps le projet, s'il marche pas trop mal, finit par être couramment utilisé, mais le mal est fait: c'est quand même un stagiaire qui l'a fait, sans que personne ne fasse de relecture de code.
    Va expliquer le besoin de repasser sur du code qui marchouille dans une grosse boite (je travaille dans une banque dont le logo devrait plus être un mammouth qu'un écureuil je précise)

    Donc on se retrouve avec une montagne de code bizarre qui marche mais qui est incompréhensible et inmaintenable.(.../...)
    *Vu chez un éditeur de logiciel, qui vend un pseudo-langage : la compilation a été faite par un stagiaire. Alors, l'utilisateur peut définir un type de données, une donnée, une "règle"(une ligne de code), des contenants divers......mais quand on compile, à chaque compilation d'élément, on revérifie tout en bloc. Donc si 500 données utilisent le même type, le type en question est vérifié 500 fois. Et si chaque donnée est utilisée dans 9 règles, le type de donnée est vérifié 5000 fois. A chaque compil. (mais il me semble qu'ils ont corrige à un moment ou à un autre).

    *Vu dans une banque qui sponsorise le rugby : on demande au stagiaire de faire les statistiques de la nouvelle application(qui marche bien par ailleurs). 7 colonnes(dont une de total), une vingtaine de lignes(totaux, moyennes, variations mensuelles, etc.....). Il fait le tout en une requête SQL. Évidemment illisible, et qui de plus ralentit considérablement au fur et à mesure que le temps passe et que la base s'étoffe. Au bout de 13 mois, le gestionnaire(moi) ne peut plus consulter les statistiques, la requête dépasse les 30 secondes qui déclenchent un time-out..... Je suis parti à ce moment là, en souhaitant bien du plaisir à mon successeur.

  18. #158
    Invité régulier
    Inscrit en
    juin 2008
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : juin 2008
    Messages : 25
    Points : 5
    Points
    5

    Par défaut

    Travaillant en temps que developpeur dans le domaine de la télévision sur IP, nous avons recemment reçu d'un associé une API a tester.

    En commencant à tester ça (du php, javascript,...) on se rend compte que pas grand chose ne marche.
    On commence un peu a éplucher le contenu des fichiers qui nous ont été fournis, et on tombe la dessus

    faut admettre qu'avec 3 's' ça ne fonctionne pas plus rapidement. Et moi qui pensait que des grosses boites qui codaient des APIs faisaient a bien, et bien la j'ai envie de dire "ou pas"...

  19. #159
    Membre habitué
    Inscrit en
    mars 2007
    Messages
    135
    Détails du profil
    Informations forums :
    Inscription : mars 2007
    Messages : 135
    Points : 112
    Points
    112

    Par défaut

    Citation Envoyé par r0d Voir le message
    Ca a déjà été dit, ici et ailleurs, mais il est toujours bon de le rappeler:
    Tout le monde fait des bourdes, c'est humain. L'important c'est de savoir s'en rendre compte - accepter les critiques, se remettre en question quand il y a des bugs, prendre le temps de lire sur le sujet (la doc, du bon code, les specs, developpez.com...), prendre le temps de discuter, bref, ne pas se jeter sur le code sans prendre un minimum de recul - et s'en souvenir pour ne plus reproduire ces erreurs.

    Il y a quelqu'un qui a ça dans sa signature, à peu de chose près: "un homme fort n'est pas quelqu'un qui ne tombe jamais, mais quelqu'un qui sait se relever"

    ahhhhhh ohmmmmmm


  20. #160
    Membre actif
    Inscrit en
    mars 2007
    Messages
    72
    Détails du profil
    Informations forums :
    Inscription : mars 2007
    Messages : 72
    Points : 163
    Points
    163

    Par défaut

    Je me souviens d'une appli web ASP (l'ancien, pas .Net) que nous avions étudiée pour en reprendre les principes dans une appli aux normes du jour.

    Les requêtes SQL étaient générées en javascript à la volée dans la page et faisaient une taille certaine...

Discussions similaires

  1. Quel est le pire bout de code que vous ayez jamais écrit ?
    Par Gordon Fowler dans le forum Débats sur le développement - Le Best Of
    Réponses: 61
    Dernier message: 31/10/2011, 12h18
  2. Quelle est la plus grosse erreur de programmation que vous ayez jamais commise ?
    Par Katleen Erna dans le forum Débats sur le développement - Le Best Of
    Réponses: 138
    Dernier message: 03/08/2011, 23h38
  3. Petit bout de code que je ne saisis pas trop
    Par MeTaLCaM dans le forum C#
    Réponses: 5
    Dernier message: 03/12/2009, 00h07
  4. [Vos débuts] Quel est le premier langage que vous ayez appris ?
    Par Commodore dans le forum La taverne du Club : Humour et divers
    Réponses: 171
    Dernier message: 02/02/2007, 14h43

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