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

Actualités Discussion :

Le pire bout de code que vous ayez vu

  1. #121
    Futur Membre du Club
    Inscrit en
    Novembre 2009
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Novembre 2009
    Messages : 4
    Points : 5
    Points
    5
    Par défaut
    Je suis en école d'informatique, et après 3 mois de C, un gars m'a montré un bout de code qui ne fonctionnait pas.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    void my_putchar(char c)
    {
        write(1, &c, 1);
    }
    
    int main()
    {
        my_putchar('Joyeux noel');
        return (0);
    }
    Il s'est demandé pourquoi tout le monde a rigolé.

  2. #122
    Inactif  
    Profil pro
    Inscrit en
    Février 2003
    Messages
    4 341
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 4 341
    Points : 5 953
    Points
    5 953
    Par défaut
    Citation Envoyé par jpelaho Voir le message
    Juste pour réagir par rapport à ce genre de code que je ne trouve pas si idiot que ca. Genre if(true) ou if(1).

    Il m'est déjà arrivé de faire ca dans mon code. La raison c'est qu'il ya effectivement un test qui doit être mis à ce niveau, je fais le test mais il s'avère que ce n’est pas le bon test alors je l'enlève mais sans supprimer l'instruction if (cela me permet de me rappeler cela plus tard en voyant un "if" qui n'a pas de sens dans le code).

    Bien entendu pour faire une release, il faut enlever le test ou le corriger. Mais ca peut souvent aider de laisser ca dans un code de façon momentané.
    Je préfère, pour ma part, mettre le test en commentaire, et même y ajouter d'autres commentaires afin de rappeler le pourquoi du comment on ne fait plus le test !

  3. #123
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2009
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 18
    Points : 24
    Points
    24
    Par défaut
    Citation Envoyé par Gastiflex Voir le message
    A la fac j'ai été en binôme sur un projet avec quelqu'un qui avait réécrit la fonction malloc, car celle de base n'était pas assez "optimisée".
    Ca m'avait bien fait rire.
    C'est pas faux. Malloc est lent. De l'autre côté, il faut être capable de le recoder...

    Citation Envoyé par Gastiflex Voir le message
    On appréciera :
    - le fait de réécrire des fonctions standard
    - le fait de les réécrire DEUX fois
    - l'ordre des paramètres inversé par rapport à la fonction standard
    - cette magnifique façon d'écrire un while dans la première fonction
    La seule chose que je peux défendre c'est le fait de réécrire des fonctions standards : certaines ont des défauts (comme par exemple ne pas tester les pointeurs) ce qui est TRES gênant quand tu cherches un segfault que jamais tu n'irai chercher dans une fonction "officielle" à laquelle tu fais confiance.

  4. #124
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    62
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 62
    Points : 54
    Points
    54
    Par défaut Plus mathématiques que code, mais bon
    Un des bouts codes m'ayant fait le plus rire après reprise d'un soft, c'est un calcul de moyenne (en Pascal):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    If (pointA.X < pointB.X) then
      moyX:= pointA.X + (pointB.X - pointA.X)/2
    else
      moyX:= pointB.X + (pointA.X - pointB.X)/2;

    ce qui est évidement la même chose (moyX:= (pointA.X + pointB.X)/2 ), seulement quand c'est répété plusieurs fois (en X et en Y aussi), ça devient vite très lourd à lire.

    avec des choses aussi du genre (où maval est un boolean)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if (maval=true) then
      maval:= false
    else
      maval:= true;

  5. #125
    Membre expert Avatar de jabbounet
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juin 2009
    Messages
    1 909
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Juin 2009
    Messages : 1 909
    Points : 3 284
    Points
    3 284
    Par défaut
    Citation Envoyé par Daestrik Voir le message
    La seule chose que je peux défendre c'est le fait de réécrire des fonctions standards : certaines ont des défauts (comme par exemple ne pas tester les pointeurs) ce qui est TRES gênant quand tu cherches un segfault que jamais tu n'irai chercher dans une fonction "officielle" à laquelle tu fais confiance.
    Il est souvent plus simple de les encapsuler et de contrôler les paramètres plutôt que de les réécrire.
    bazar: http://www.improetcompagnie.com/publ...ctacles-6.html

    BÉPO la disposition de clavier francophone, ergonomique et libre: http://bepo.fr/wiki/Accueil

    Emacs Wiki: http://www.emacswiki.org/

    En attente de ce que produira: http://www.pushmid.com

  6. #126
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2009
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 18
    Points : 24
    Points
    24
    Par défaut
    Citation Envoyé par jabbounet Voir le message
    Il est souvent plus simple de les encapsuler et de contrôler les paramètres plutôt que de les réécrire.
    Certes, mais dans le cas d'un strcpy ça reste raisonnable.

  7. #127
    Rédacteur
    Avatar de Arnaud F.
    Homme Profil pro
    Développeur COBOL
    Inscrit en
    Août 2005
    Messages
    5 183
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Développeur COBOL
    Secteur : Finance

    Informations forums :
    Inscription : Août 2005
    Messages : 5 183
    Points : 8 873
    Points
    8 873
    Par défaut
    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 ...)
    C'est par l'adresse que vaut le bûcheron, bien plus que par la force. Homère

    Installation de Code::Blocks sous Debian à partir de Nightly Builds

  8. #128
    Inactif  
    Avatar de Mac LAK
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    3 893
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 3 893
    Points : 4 846
    Points
    4 846
    Par défaut
    Citation Envoyé par Arnaud F. Voir le message
    Je me suis toujours demandé son utilité (surtout en dehors de toute transaction ...)
    Déclencher un trigger et/ou une procédure stockée, peut-être ?
    Mac LAK.
    ___________________________________________________
    Ne prenez pas la vie trop au sérieux, de toutes façons, vous n'en sortirez pas vivant.

    Sources et composants Delphi sur mon site, L'antre du Lak.
    Pas de question technique par MP : posez-la dans un nouveau sujet, sur le forum adéquat.

    Rejoignez-nous sur : Serveur de fichiers [NAS] Le Tableau de bord projets Le groupe de travail ICMO

  9. #129
    Rédacteur
    Avatar de Arnaud F.
    Homme Profil pro
    Développeur COBOL
    Inscrit en
    Août 2005
    Messages
    5 183
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Développeur COBOL
    Secteur : Finance

    Informations forums :
    Inscription : Août 2005
    Messages : 5 183
    Points : 8 873
    Points
    8 873
    Par défaut
    Citation Envoyé par Mac LAK Voir le message
    Déclencher un trigger et/ou une procédure stockée, peut-être ?
    J'ai vérifié, t'en fais pas, y a pas
    C'est par l'adresse que vaut le bûcheron, bien plus que par la force. Homère

    Installation de Code::Blocks sous Debian à partir de Nightly Builds

  10. #130
    Inactif  
    Avatar de Mac LAK
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    3 893
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 3 893
    Points : 4 846
    Points
    4 846
    Par défaut
    Citation Envoyé par Arnaud F. Voir le message
    J'ai vérifié, t'en fais pas, y a pas
    Alors on va dire qu'à une époque lointaine, il y en a eu une, qu'elle a disparu mais pas le code de déclenchement... L'autre hypothèse étant nettement insultante pour le codeur, c'est forcément la première solution, n'est-ce pas ?
    Mac LAK.
    ___________________________________________________
    Ne prenez pas la vie trop au sérieux, de toutes façons, vous n'en sortirez pas vivant.

    Sources et composants Delphi sur mon site, L'antre du Lak.
    Pas de question technique par MP : posez-la dans un nouveau sujet, sur le forum adéquat.

    Rejoignez-nous sur : Serveur de fichiers [NAS] Le Tableau de bord projets Le groupe de travail ICMO

  11. #131
    Expert éminent sénior

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

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

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Points : 32 311
    Points
    32 311
    Par défaut
    Citation Envoyé par Mac LAK Voir le message
    Déclencher un trigger et/ou une procédure stockée, peut-être ?
    Peut être aussi de vérifier que champ1 respecte toujours une contrainte ou bien de vérifier que le jeu d'enregistrements est updatable. Des raisons, on peut toujours en trouver à posterori, mais est ce qu'il y en avait une sur le moment ?

  12. #132
    Membre expert Avatar de jabbounet
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juin 2009
    Messages
    1 909
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Juin 2009
    Messages : 1 909
    Points : 3 284
    Points
    3 284
    Par défaut
    personellement je vais pencher pour l'hypothèse de mac lak.

    Ceci dit j'ai aussi vu des procédures stockées lancer des exception (Division par zéro) pour sortir en cas d'erreur.
    bazar: http://www.improetcompagnie.com/publ...ctacles-6.html

    BÉPO la disposition de clavier francophone, ergonomique et libre: http://bepo.fr/wiki/Accueil

    Emacs Wiki: http://www.emacswiki.org/

    En attente de ce que produira: http://www.pushmid.com

  13. #133
    Inactif  
    Avatar de Mac LAK
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    3 893
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 3 893
    Points : 4 846
    Points
    4 846
    Par défaut
    Citation Envoyé par jabbounet Voir le message
    Ceci dit j'ai aussi vu des procédures stockées lancer des exception (Division par zéro) pour sortir en cas d'erreur.
    J'ai vu ça aussi en C++ : des boucles cassées par des levées d'exception volontaires au lieu d'un simple break... Ou des exceptions levées en traitement nominal (= à chaque appel), le code utile étant dans le catch et la gestion des erreurs dans le try...
    Mac LAK.
    ___________________________________________________
    Ne prenez pas la vie trop au sérieux, de toutes façons, vous n'en sortirez pas vivant.

    Sources et composants Delphi sur mon site, L'antre du Lak.
    Pas de question technique par MP : posez-la dans un nouveau sujet, sur le forum adéquat.

    Rejoignez-nous sur : Serveur de fichiers [NAS] Le Tableau de bord projets Le groupe de travail ICMO

  14. #134
    Membre habitué
    Inscrit en
    Mars 2007
    Messages
    135
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 135
    Points : 146
    Points
    146
    Par défaut en c
    if (test);
    {
    code
    }

    C'est bête mais on peut mettre du temps à le voir

  15. #135
    Membre expert Avatar de jabbounet
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juin 2009
    Messages
    1 909
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Juin 2009
    Messages : 1 909
    Points : 3 284
    Points
    3 284
    Par défaut
    Citation Envoyé par inconnu652000 Voir le message
    if (test);
    {
    code
    }

    C'est bête mais on peut mettre du temps à le voir
    c'est balot, perso je l'ai vu sur des boucles for

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    for ( ....) ;
       quelquechose
    ou une variante

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    for ( ....) 
       quelquechose;
       quelquechose d'autre qui devrais aussi etre dans la boucle;
    comme quoi c'est une bonne habitude de mettre systématiquement des accolades sur les boucles.
    bazar: http://www.improetcompagnie.com/publ...ctacles-6.html

    BÉPO la disposition de clavier francophone, ergonomique et libre: http://bepo.fr/wiki/Accueil

    Emacs Wiki: http://www.emacswiki.org/

    En attente de ce que produira: http://www.pushmid.com

  16. #136
    Invité
    Invité(e)
    Par défaut
    je suis tombé là dessus aujourd'hui... personnellement je trouve que ça pique un peu les yeux. Le pire c'est que l'appli est bourré de truc du même genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    if (MaClass.maFonction(string1, result) == 0)
    	if (MaClass.maFonction(string2, result) == 0)
    		if (MaClass.maFonction(string3, result) == 0)
    			if (MaClass.maFonction(string4, result) == 0)
    				if (MaClass.maFonction(string5, result) == 0)
    					if (MaClass.maFonction(string6, result) == 0) == 0)
    						if (MaClass.maFonction(string7, result) == 0)
    							return false;
    return true;

  17. #137
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par jabbounet Voir le message
    ou une variante

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    for ( ....) 
       quelquechose;
       quelquechose d'autre qui devrais aussi etre dans la boucle;
    comme quoi c'est une bonne habitude de mettre systématiquement des accolades sur les boucles.
    J'ai souvent croise ça aussi il y a quelques mois, sur quelques lignes de code comme c'est le cas ici, c'est assez simple a voir, beaucoup moins quand c'est au milieu de pages et de pages de code du même style (souvent mal indente forcement)... Moi qui ai l'habitude de toujours utiliser les accolades

  18. #138
    Membre émérite
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    1 537
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 537
    Points : 2 548
    Points
    2 548
    Par défaut
    Citation Envoyé par Mac LAK Voir le message
    J'ai vu ça aussi en C++ : des boucles cassées par des levées d'exception volontaires au lieu d'un simple break... Ou des exceptions levées en traitement nominal (= à chaque appel), le code utile étant dans le catch et la gestion des erreurs dans le try...
    Il y a des gens qui en ont fait un style en java. La programmation par exceptions. Selon eux, c'est génialissime, mais je suis pas franchement convaincu.

  19. #139
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    13
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Suisse

    Informations forums :
    Inscription : Octobre 2009
    Messages : 13
    Points : 17
    Points
    17
    Par défaut
    Citation Envoyé par OWickerman Voir le message
    Le genre de truc que je déteste en PHP, l'utilisation abusive des echo...
    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
    	<?php
    			include ('fonction.inc');
    			titre('Pièces justificatives');
    		echo "<table border='0' width='95%' CELLPADDING='1' align='center' class='txt_tab_tarif'>";
    		echo "<tr><td colspan='2'>";sstitre('Joindre les pièces justificatives suivantes');echo "</td></tr>";
    		echo "<tr><td colspan='2'>(<b>photocopie</b> obligatoirement):</td></tr>";
    		echo "<tr><td colspan='2'>&nbsp;</td></tr>";
    		echo "<tr><td><img src='img/puce2.gif'></td><td>Photocopie du justificatif d'adresse (Eau, EDF...)</td></tr>";
    		echo "<tr><td valign='top'><img src='img/puce2.gif'></td><td>Photocopie de l'avis d'imposition ".(date('Y')-2)." ou ".(date('Y')-1)." (si vous êtes imposable)<br> OU photocopie de la dernière notification de la CAF (".date('Y')." avec le quotient familial)</td></tr>";
    		echo "<tr><td><img src='img/puce2.gif'></td><td>Cachet de l'établissement scolaire pour les primaires, maternelles et collégiens dans le cadre réservé à cet effet.</td></tr>";
    		echo "<tr><td><img src='img/puce2.gif'></td><td>Attestation d'inscription dans l'établissement scolaire pour les élèves fréquentant un lycée</td></tr>";
    		echo "<tr><td colspan='2'>&nbsp;</td></tr>";
    		echo "<tr><td colspan='2' align='center'><a href='#'><img src='img/b_fermer.gif' border='0' onClick='self.close();'></a></td></tr>";
    		echo "</table>";
    	?>
    Cette page la étant simple, ça va encore... J'en ai de pires :
    Celui ci, par exemple, qui, non seulement abuse des echo, mais en plus essaie de sauvegarder des sauts de lignes....
    Ah, oui, la technique des tableaux dans des tableaux est un truc de fourbe. On devrait pendre les gens qui osent faire ça !
    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
    			echo "<form name='rech_iti' id='rech_iti' method='GET' action='rech_iti_res.php' target='_self'>";
    			echo "<table border='0' width='95%' CELLPADDING='0' align='center' class='txt_tab_tarif'>";
    			echo "<tr><td colspan=2 class='txt_sstitre'>Merci de remplir le formulaire suivant</td></tr>";
    			echo "<tr><td colspan=2 class='txt_sstitre'>&nbsp;</td></tr>";
    			echo "<tr><td>Période de départ souhaité</td><td>";
    			echo "<select name='list_per' class='txt_menu_der' id='list_per'>";foreach($tabperiode as $cle=>$valeur){echo "<option class='txt_menu_der' value='".$cle."'>".$valeur."</option>\n";} 
    			echo "</select>";
    			echo "</td></tr>";
    			echo "<tr><td>Heure</td><td>";echo "<select name='heure' class='txt_menu_der' id='heure'>";for($i=0;$i < 24;$i++){echo "<option class='txt_menu_der' value='".$i."'>".$i."</option>\n";}echo "</select> &nbsp; h &nbsp;&nbsp;";echo "<select name='minute' class='txt_menu_der' id='minute'>";for($i=0;$i <= 59;$i{ echo "<option class='txt_menu_der' value='".$i."'>".$i."</option>\n";}echo "</select>&nbsp;&nbsp;mn";
    			echo "</td></tr><tr><td colspan='2'>&nbsp;</td></tr>";
    			
    			//DEPART
    			echo "<tr><td colspan='2'>";
    			echo "<fieldset style='border:2px solid rgb(191, 191, 191);width: 400px'>";
    				echo "<legend class=txt_sstitre>Départ</legend>";
    				echo "<table border='0' align='center' width='80%' CELLPADDING='0' class='txt_menu_der'>";
    				echo "<tr><td>Commune</td><td>";chmpderoul_noSel_free('list_comm_dep','txt_menu_der',$tabcommune,"onchange=\"go('php_ajax/commune_dep.php','')\"");echo "</td></tr>";
    				echo "<tr><td>Rue</td><td>";chmpderoul_mess_free('list_rue_dep','txt_menu_der',$tabrue_dep,'Choisir une commune',"onchange=\"go('php_ajax/rue_dep.php','')\"");echo "</td></tr>";
    				echo "<tr><td>Station</td><td>";chmpderoul_mess_free('list_station_dep','txt_menu_der',$tabstation_dep,'Choisir une rue',"");
    				echo "<div name='blocdepart' id='blocdepart'><input type='hidden' name='sta_dep' id='sta_dep' value='0'></div>";
    				echo "</td></tr>";
    				echo "</table>";
    			echo "</fieldset></td></tr><tr><td>&nbsp;</td></tr>";
    			
    			//ARRIVEE
    			echo "<tr><td colspan='2'>";
    			echo "<fieldset style='border:2px solid rgb(191, 191, 191);width: 400px'>";
    				echo "<legend class=txt_sstitre>Arrivée</legend>";
    				echo "<table border='0' align='center' width='80%' CELLPADDING='0' class='txt_menu_der'>";
    				echo "<tr><td>Commune</td><td>";chmpderoul_noSel_free('list_comm_arr','txt_menu_der',$tabcommune,"onchange=\"go('php_ajax/commune_arr.php','')\"");echo "</td></tr>";
    				echo "<tr><td>Rue</td><td>";chmpderoul_mess_free('list_rue_arr','txt_menu_der',$tabrue_dep,'Choisir une commune',"onchange=\"go('php_ajax/rue_arr.php','')\"");echo "</td></tr>";
    				echo "<tr><td>Station</td><td>";chmpderoul_mess_free('list_station_arr','txt_menu_der',$tabstation_dep,'Choisir une rue',"");
    				echo "<div name='blocarrivee' id='blocarrivee'><input type='hidden' name='sta_arr' id='sta_arr' value='0'></div>";
    				echo "</td></tr>";
    				echo "</table>";
    			echo "</fieldset></td></tr>";
    			
    			echo "<tr><td colspan='2'>&nbsp;</td></tr><tr><td colspan='2'>&nbsp;</td></tr>";
    			echo "<tr><td colspan='2' align='center'><img src='img/b_rechercher.gif' style='cursor:pointer;' border='0'  onClick='testEtValid(\"rech_iti\");'>";
    			
    			 echo "</td></tr>";
    			echo "</table></form>";
    		?>
    Pour infos, quand on m'a demandé de finaliser le site, j'ai du remettre les pages au propre avant de comprendre ce qui s'y passait...
    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...

  20. #140
    Membre expert Avatar de jabbounet
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juin 2009
    Messages
    1 909
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Juin 2009
    Messages : 1 909
    Points : 3 284
    Points
    3 284
    Par défaut
    Citation Envoyé par deadalnix Voir le message
    Il y a des gens qui en ont fait un style en java. La programmation par exceptions. Selon eux, c'est génialissime, mais je suis pas franchement convaincu.
    moi aussi je ne suis pas convaincu
    bazar: http://www.improetcompagnie.com/publ...ctacles-6.html

    BÉPO la disposition de clavier francophone, ergonomique et libre: http://bepo.fr/wiki/Accueil

    Emacs Wiki: http://www.emacswiki.org/

    En attente de ce que produira: http://www.pushmid.com

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