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

Débats sur le développement - Le Best Of Discussion :

Les langages de programmation que vous détestez


Sujet :

Débats sur le développement - Le Best Of

  1. #41
    Expert éminent
    Avatar de _skip
    Homme Profil pro
    Développeur d'applications
    Inscrit en
    Novembre 2005
    Messages
    2 898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur d'applications
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 898
    Points : 7 752
    Points
    7 752
    Par défaut
    Alors moi, ce genre de langage, et de "features", non seulement ça me laisse froid, mais c'est tout simplement absurde...
    Je pense que ça a une utilité pour les templates, surtout les collections et les conteneurs dans lequel des opérations "==, >, <" doivent être faites sur des types qui ne sont pas connus à l'avance.
    C'est clair que des fois ça peut amener de la confusion, tout comme un simple alias de type le peut aussi.

    Je pense que c'est tout un débat de savoir si une feature a droit à l'existence ou non sous prétexte qu'elle peut être mal utilisée. A titre d'exemple, lorsque les extensions methods sont arrivées en C#, je me suis dit "ok, amateurs de code spaghetti, réjouissez-vous!".
    Et au final j'ai même presque réussi à leur trouver une utilité ...

  2. #42
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    432
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 432
    Points : 593
    Points
    593
    Par défaut
    souviron, on juge pas quelque chose en fonctions de la quantité de merde qu'il est possible de faire avec (bouh les micro-ondes c'est nul la preuve on peut s'en servir pour tuer les bébé !) , mais de la quantité de chose positifs qu'elle permet de faire (me faire à manger facilement tout les jours).

  3. #43
    Expert éminent sénior

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    10 603
    Détails du profil
    Informations personnelles :
    Âge : 66
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 603
    Points : 17 913
    Points
    17 913
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par Ubiquité Voir le message
    souviron, on juge pas quelque chose en fonctions de la quantité de merde qu'il est possible de faire avec (bouh les micro-ondes c'est nul la preuve on peut s'en servir pour tuer les bébé !) , mais de la quantité de chose positifs qu'elle permet de faire (me faire à manger facilement tout les jours).
    tu prouves bien mon point




    si je me sers d'un mciro-ondes 1 fois par mois, c'est le grand max.. Et encore, jsute pour faire réchauffer mon café
    "Un homme sage ne croit que la moitié de ce qu’il lit. Plus sage encore, il sait laquelle".

    Consultant indépendant.
    Architecture systèmes complexes. Programmation grosses applications critiques. Ergonomie.
    C, Fortran, XWindow/Motif, Java

    Je ne réponds pas aux MP techniques

  4. #44
    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
    C'est ton choix.
    Toute ma famille s'en sert pour faire chauffer son bol chaque matin, y compris celui qui prend du café (il fait chauffer le lait avant)...
    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.

  5. #45
    Rédacteur

    Avatar de Davidbrcz
    Homme Profil pro
    Ing Supaéro - Doctorant ONERA
    Inscrit en
    Juin 2006
    Messages
    2 307
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ing Supaéro - Doctorant ONERA

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 307
    Points : 4 732
    Points
    4 732
    Par défaut
    Un peu comme le mathématicien qui cherche à enfermer des moutons et qui au final s'enferme lui même et se définissant à l'extérieur, je vais plutôt dire que j'adore le C++, le prolog et les langages fonctionnels en général (lisp powa ! ) et supporte Lua (pour le scripting C++) et Ada.

    Bref, je déteste en particulier Java et C# (qui font croire à n'importe qui qu'ils peuvent et savent coder), PHP (quel bordel ce langage), IE (quelle bouse (ouais j'abuse et alors ?)), VB (même pas besoin de détailler).

    Qui pour troller ?
    "Never use brute force in fighting an exponential." (Andrei Alexandrescu)

    Mes articles dont Conseils divers sur le C++
    Une très bonne doc sur le C++ (en) Why linux is better (fr)

  6. #46
    Expert éminent sénior
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    6 803
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Décembre 2007
    Messages : 6 803
    Points : 32 058
    Points
    32 058
    Par défaut
    Citation Envoyé par Médinoc Voir le message
    Ben oui, on flambe: c'est pas plus compliqué en effet...
    Code C : 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
    if(a==0)
    {
    	(.../...)
    }
    else if(a==2)
    {
    	(.../...)
    }
    else if(a>4)
    {
    	(.../...)
    }
    else if(b>c)
    {
    	(.../...)
    }
    else
    {
    	(.../...)
    }
    (au passage, ton second code est parfaitement valide en fait)
    Et combien de lignes il te faut pour caser tous ces signes? Qui ne font que 1 misérable caractère? Désolé, c'est illisible pour moi. Après, ce topic est bien une question de préférences personnelles, non? Pour moi(et seulement pour moi, hein), ça reste un paquet de signes cabalistiques superfétatoires.

    Citation Envoyé par Médinoc Voir le message
    Pour les parenthèses et cie, c'est pourtant simple:
    • accolades {} pour les blocs d'instructions; donc, dès que tu as un "end quelque chose" à taper, ce sera des accolades.
    • crochets [] pour les indices de tableaux
    • parenthèses () pour les fonctions et certains mots-clés (comme if et while)
    simple, sauf que c'est bien trop petit. Bien trop facile à rater. En tous cas, pour moi.

    Citation Envoyé par Médinoc Voir le message
    C'est beaucoup plus lisible que des langages où la même paire de symboles est utilisée pour n'importe quoi. Par contre, j'admets qu'en C++ ça devient trop compliqué (car ils introduisent un nouvel usage pour inférieur et supérieur <> alors que ce sont toujours aussi des opérateurs de comparaison)
    ça, c'est bien possible, mais je n'ai pas mis ma comparaison dans ce sens là.
    Les 4 règles d'airain du développement informatique sont, d'après Michael C. Kasten :
    1)on ne peut pas établir un chiffrage tant qu'on a pas finalisé la conception
    2)on ne peut pas finaliser la conception tant qu'on a pas complètement compris toutes les exigences
    3)le temps de comprendre toutes les exigences, le projet est terminé
    4)le temps de terminer le projet, les exigences ont changé
    Et le serment de non-allégiance :
    Je promets de n’exclure aucune idée sur la base de sa source mais de donner toute la considération nécessaire aux idées de toutes les écoles ou lignes de pensées afin de trouver celle qui est la mieux adaptée à une situation donnée.

  7. #47
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    432
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 432
    Points : 593
    Points
    593
    Par défaut
    Faudrait que tu essayes tcl, je pense que t'aimerai.

  8. #48
    Nouveau Candidat au Club
    Inscrit en
    Septembre 2009
    Messages
    1
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations forums :
    Inscription : Septembre 2009
    Messages : 1
    Points : 1
    Points
    1
    Par défaut
    le SMS et le langage TEXTO ! grrrrrrrrrrrrrrrrrrrrrrrrrrrrrr

  9. #49
    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
    Citation Envoyé par el_slapper Voir le message
    Et combien de lignes il te faut pour caser tous ces signes? Qui ne font que 1 misérable caractère?
    Là, tu me fais marrer: J'ai justement répartis les lignes pour que ce soit plus facile à comprendre pour toi...

    Le C étant indépendant des lignes, on peut tout-à-fait faire ceci:
    Code C : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    if(a==0) {
    	(.../...)
    } else if(a==2) {
    	(.../...)
    } else if(a>4) {
    	(.../...)
    } else if(b>c) {
    	(.../...)
    } else {
    	(.../...)
    }
    Ou même ceci:
    Code C : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if(a==0) { (.../...) }
    else if(a==2) { (.../...) }
    else if(a>4) { (.../...) }
    else if(b>c) { (.../...) }
    else { (.../...) }
    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.

  10. #50
    Expert éminent sénior

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    10 603
    Détails du profil
    Informations personnelles :
    Âge : 66
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 603
    Points : 17 913
    Points
    17 913
    Billets dans le blog
    2
    Par défaut
    ou même

    Code C : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    if(a==0) { (.../...) } else if(a==2) { (.../...) } else if(a>4) { (.../...) } else if(b>c) { (.../...) } else { (.../...) }


    si on veut...

    Si c'est le nombre de lignes qui est inconvénient...
    "Un homme sage ne croit que la moitié de ce qu’il lit. Plus sage encore, il sait laquelle".

    Consultant indépendant.
    Architecture systèmes complexes. Programmation grosses applications critiques. Ergonomie.
    C, Fortran, XWindow/Motif, Java

    Je ne réponds pas aux MP techniques

  11. #51
    Membre chevronné

    Homme Profil pro
    Architecte logiciel
    Inscrit en
    Novembre 2006
    Messages
    1 252
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte logiciel
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 252
    Points : 1 954
    Points
    1 954
    Par défaut
    Au contraire, c'est important de revenir à la ligne car on mesure la performance d'un développeur aux nombres de lignes de code qu'il pond.

  12. #52
    Expert éminent
    Avatar de _skip
    Homme Profil pro
    Développeur d'applications
    Inscrit en
    Novembre 2005
    Messages
    2 898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur d'applications
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 898
    Points : 7 752
    Points
    7 752
    Par défaut
    Citation Envoyé par Davidbrcz Voir le message
    Bref, je déteste en particulier Java et C# (qui font croire à n'importe qui qu'ils peuvent et savent coder)
    Mort de rire de ce troll.
    C'est vrai qu'à la cafétéria ça fait beaucoup plus l33t r00tg33k de dire qu'on est une bête en C++ plutôt qu'en java.

    Pourtant trouver un bon développeur Java EE c'est *au moins* aussi dur que trouver un bon programmeur C++.
    Enfin bon l'objectivité est pas forcément au menu de ce topic j'en conviens, mais attention à pas être trop réducteur sur des choses que vous ne connaissez que par à priori .

  13. #53
    Expert éminent
    Avatar de _skip
    Homme Profil pro
    Développeur d'applications
    Inscrit en
    Novembre 2005
    Messages
    2 898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur d'applications
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 898
    Points : 7 752
    Points
    7 752
    Par défaut
    Citation Envoyé par Tommy31 Voir le message
    Au contraire, c'est important de revenir à la ligne car on mesure la performance d'un développeur aux nombres de lignes de code qu'il pond.
    Il paraît qu'à l'époque de Cobol (que je n'ai pas connu), l'estimation du prix d'un écran de saisie pouvait plus ou moins se faire en comptant le nombre de lignes de code qui seraient nécessaire à son fonctionnement. Style un champ c'est X lignes de codes pour l'affichage, X pour la lecture. Un total de Y lignes multiplié par un facteur de son choix...

  14. #54
    Membre expérimenté Avatar de davcha
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    1 258
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 258
    Points : 1 539
    Points
    1 539
    Par défaut
    Code C : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    if(a==0) {
    	(.../...)
    } else if(a==2) {
    	(.../...)
    } else if(a>4) {
    	(.../...)
    } else if(b>c) {
    	(.../...)
    } else {
    	(.../...)
    }
    Y'a deux-trois choses qui m'emmerdent dans cet exemple.

    D'abord, pourquoi mettre les tests exceptionnels en 1er ?.. A moins bien sûr que le 0 et le 2 arrivent plus souvent que les nombres supérieurs à 4, dans ce cas, j'ai aucun souci avec ça.
    Mais, sans information supplémentaire, c'est plus performant d'écrire les tests exceptionnels en dernier (c'est à dire avant b>c, ici).

    Ensuite, suivant les langages, un switch et un if (même imbriqué) ne fonctionnent pas du tout de la même façon.
    En C, par exemple, un switch est une structure qui fait appel à un tableau contenant les adresses des instructions à executer dans le cas où la valeur machin est égale à truc.
    En clair :
    Code c : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    switch (machin){
      case 1:...
      case 2:...
      case 3:...
    }
    ce code utilisera un tableau, à priori, à 3 ou 4 entrées (avec ou sans "vide" à l'indice 0), et suivant la valeur de machin, on jumpera directement à l'adresse contenue dans la case 1, 2 ou 3 du tableau.

    Donc, écrire quelque chose comme ça, en C :
    Code c : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    switch true {
      case machin == 0:
      case machin == 2:
      case bidule > truc:
      case alpha * i == 4 ? i > 3 : strlen(message) <= w / 2:
    }
    et se plaindre que ça marche pas...
    Bah, normal comment voulez-vous que ça fonctionne avec l'histoire du tableau ? alpha * i == 4 ? i > 3 : blablabla... c'est un indice de tableau chez vous ?...


    Enfin bref, l'idée du switch est justement d'éviter de faire tous les tests les uns après les autres, mais de sauter directement à celui qui correspond.
    A partir de là, c'est au contraire les langages qui permettent de faire des horreurs comme le dernier bout de code que je viens d'écrire (switch true{blablabla...) qui sont "moins bons" (dans ce domaine précis), dans la mesure où ils n'offrent pas de structure de contrôle proposant un comportement réellement différent, mais uniquement du sucre syntaxique.

    Tout ça pour dire que je vais ajouter quelques langages à ceux que je n'aime pas : tous ceux dont les programmeurs ne savent pas précisément ce qu'ils font.
    Merde, ça en fait un paquet du coup... Je devrais changer de boulot.

  15. #55
    gl
    gl est déconnecté
    Rédacteur

    Homme Profil pro
    Inscrit en
    Juin 2002
    Messages
    2 165
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Juin 2002
    Messages : 2 165
    Points : 4 637
    Points
    4 637
    Par défaut
    Citation Envoyé par davcha Voir le message
    Mais, sans information supplémentaire, c'est plus performant d'écrire les tests exceptionnels en dernier (c'est à dire avant b>c, ici).
    Mais ça ne donne pas forcément la même chose.
    Dans le cas où a=0, b=2 et c=1 par exemple, le résultat de

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    if(a == 0)
    {
       instructions1
    }
    else if(b > c)
    {
       instructions2
    }
    est différent du résultat de :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    if(b > c)
    {
       instructions2
    }
    else if(a == 0)
    {
       instructions1
    }
    On exécute instructions1 dans le premier cas et instructions2 dans le second.

  16. #56
    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
    Les langages fonctionnels, interprétés et de façon générale tout ce qui ne permet pas de taper directement dans la tripaille de la machine et/ou qui se cache derrière des mégaoctets de runtime...
    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

  17. #57
    Membre expérimenté Avatar de davcha
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    1 258
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 258
    Points : 1 539
    Points
    1 539
    Par défaut
    Citation Envoyé par gl Voir le message
    Mais ça ne donne pas forcément la même chose.
    Dans le cas où a=0, b=2 et c=1 par exemple, le résultat de

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    if(a == 0)
    {
       instructions1
    }
    else if(b > c)
    {
       instructions2
    }
    est différent du résultat de :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    if(b > c)
    {
       instructions2
    }
    else if(a == 0)
    {
       instructions1
    }
    On exécute instructions1 dans le premier cas et instructions2 dans le second.
    Oui, parce que j'ai évidemment oublié de préciser de placer les tests exceptionnels avant b > c, n'est-ce pas ?... Ah bah non.

  18. #58
    gl
    gl est déconnecté
    Rédacteur

    Homme Profil pro
    Inscrit en
    Juin 2002
    Messages
    2 165
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Juin 2002
    Messages : 2 165
    Points : 4 637
    Points
    4 637
    Par défaut
    Citation Envoyé par davcha Voir le message
    Oui, parce que j'ai évidemment oublié de préciser de placer les tests exceptionnels avant b > c, n'est-ce pas ?... Ah bah non.
    Oups !!!

    Au temps pour moi (je m'étais arrêté avant la parenthèse).

  19. #59
    Membre chevronné
    Avatar de kedare
    Homme Profil pro
    Network Automation Engineer
    Inscrit en
    Juillet 2005
    Messages
    1 548
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Network Automation Engineer

    Informations forums :
    Inscription : Juillet 2005
    Messages : 1 548
    Points : 1 861
    Points
    1 861
    Par défaut
    La langage que je deteste le plus: PHP (Syntaxe imbuvable, API sans aucune structure, pas de backtrace pour le debuggage, et j'en passe)

  20. #60
    Membre confirmé
    Inscrit en
    Août 2004
    Messages
    556
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 556
    Points : 588
    Points
    588
    Par défaut
    Citation Envoyé par Tommy31 Voir le message
    Mmm, disons qu'en php, en plus d'accepter des comparaisons hétérogènes, on aboutit à des résultats déroutants :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    $var = true ;
    if( $var == "true" ) echo("C'est vrai !"); // la chaine true est vraie car non vide donc le test d'égalité renvoie vrai !
    if( $var == "false" ) echo("C'est faux !") // même chose, sauf que là, l'affichage devient plus étonnant
    if( $var == "caribou" ) echo("C'est un cariboo !"); // cela marche avec n'importe qu'elle chaîne
    if( $var == 4 ) echo("C'est le nombre 4!") ; // cela marche aussi avec un type numérique. 4 est vrai !
    
    donne à l’écran
    
    C'est vrai !
    C'est faux !
    C'est un caribou !
    C'est le nombre 4 !
    Ce résultat est tout sauf stupide.
    Quand tu joues avec un langage à typage dynamique, il faut que tu t'attendes à ce qu'il y ait des cast implicite partout.
    En PHP, il y a des conventions, à toi de les connaître.
    Bref, je vous trouve bien méchant avec le PHP. Bien sûr qu'un mauvais programmeur fera de la merde avec.
    De plus rien ne vous oblige à comparer des pommes et des poires...
    À mon avis, le seul reproche qu'on puisse lui faire c'est qu'il n'est pas compilé. Mais en même temps, ça a ses avantages. Arme à double tranchant.

    Sinon, perso, je choisis mon langage en fonction du logiciel que je vais programmer. Il serait absurde de programmer un déplacement massif de fichiers en C alors que le bash est là pour ça. Comme il serait idiot de vouloir programmer un client de gestion d'une multinationale en bash.

Discussions similaires

  1. Réponses: 31
    Dernier message: 01/08/2012, 23h34
  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. Réponses: 15
    Dernier message: 15/12/2010, 00h38
  4. Les langages de programmation logique
    Par hanou88 dans le forum Autres langages
    Réponses: 2
    Dernier message: 28/12/2009, 02h31

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