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. #21
    Membre expérimenté Avatar de davcha
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    1 258
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 258
    Points : 1 539
    Points
    1 539
    Par défaut
    Moi qui pensais que tu allais dire que tu n'aimes pas les langages objet... :p

    Personnellement, j'aime pas les langages qui n'ignorent pas les caractères d'espacements (comme csh).
    Sinon... J'aime pas tellement Java, principalement pour son organisation un peu trop bordellique à mon goût. Mais c'est souvent le cas de nombreux projets open-source, en fait.

  2. #22
    Membre émérite
    Avatar de supersnail
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 719
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 719
    Points : 2 793
    Points
    2 793
    Par défaut
    Bah,j'accroche pas vraiment avec python,qui devient illisible avec ses syntaxes raccourcies au maximum,et avec le C/C++ (à part des codes de débutants,c'est illisible )

    En plus,avec l'indentation au "tab" près,pour python

    Je préfère plus les langages comme Java,PHP ou encore javascript,où l'indentation est moins importante (même si je suis maniaque de ce côté-là :p)

  3. #23
    Membre éprouvé Avatar de Jidefix
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    742
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations forums :
    Inscription : Septembre 2006
    Messages : 742
    Points : 1 154
    Points
    1 154
    Par défaut
    Perso j'ai tout de suite detesté LISP, peut-être pour la simple raison qu'à la fac on faisait les exercices sur papier (j'ai jamais compris)
    et que gérer les parenthèses et l'indentation sur du papier ben...

    c'est chiant.

  4. #24
    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 supersnail Voir le message
    En plus,avec l'indentation au "tab" près,pour python
    En python ou pas, les gens qui ne font pas leur indentation au tab près, ça me gonfle. D'autant qu'il y a des IDE qui font ça très bien à ta place.

    Je te souhaite bien du courage pour reprendre du code d'autres qui ne sont aps indentés correctement.

  5. #25
    Membre chevronné
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    949
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 949
    Points : 1 856
    Points
    1 856
    Par défaut
    Coder comme un porc, c'est ce qui est le plus portable : on peut le faire dans n'importe quel langage.

    Ceci dit,
    Javascript + CSS + Internet Explorer 6 =

  6. #26
    Membre émérite
    Avatar de supersnail
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 719
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 719
    Points : 2 793
    Points
    2 793
    Par défaut
    @dealdanix : ce que je voulais dire,c'est que avec python,si on met un "tab" en trop,bah il va râler....
    Sinon j'ai pour habitude de bien indenter,c'est la syntaxe de python que j'aime pas du tout

  7. #27
    Membre confirmé
    Profil pro
    Développeur freelance
    Inscrit en
    Août 2006
    Messages
    453
    Détails du profil
    Informations personnelles :
    Localisation : France, Ardèche (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur freelance

    Informations forums :
    Inscription : Août 2006
    Messages : 453
    Points : 586
    Points
    586
    Par défaut
    Je ne supportes plus le vb ... En plus il n'y a même pas de ";" à la fin de chaque ligne de code

  8. #28
    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 MoscoBlade Voir le message
    Je ne supportes plus le vb ... En plus il n'y a même pas de ";" à la fin de chaque ligne de code
    Quant tu écrit une lettre a tes amis (mail ou autre), tu met un point a chaque fin de ligne?

    cela dépend de la façon dont la grammaire est définie, certains langage considèrent que l'habitude est de mettre une instruction par ligne et considère le cas d'utiliser plusieurs lignes comme le cas inhabituel.

    c'est pour cela par exemple que dans certains langage (shell, makefile, ... entre autre) tu n'as pas de caractères pour indiquer la fin de ligne, cependant tu as un caractère pour indiquer que ta ligne continue après le saut de lignes si besoin.

  9. #29
    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 supersnail Voir le message
    @dealdanix : ce que je voulais dire,c'est que avec python,si on met un "tab" en trop,bah il va râler....
    Sinon j'ai pour habitude de bien indenter,c'est la syntaxe de python que j'aime pas du tout
    Je ne suis pas un grand fan de python, mais je trouve que cet aspect du langage, un peu borné, en fait un bon langage pour débuter. Au moins, tu es pas tenté de prendre de mauvaises habitudes.

    @MoscoBlade : en effet, vb c'est a vomir

  10. #30
    Membre confirmé
    Profil pro
    Développeur freelance
    Inscrit en
    Août 2006
    Messages
    453
    Détails du profil
    Informations personnelles :
    Localisation : France, Ardèche (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur freelance

    Informations forums :
    Inscription : Août 2006
    Messages : 453
    Points : 586
    Points
    586
    Par défaut
    Citation Envoyé par jabbounet Voir le message
    Quant tu écrit une lettre a tes amis (mail ou autre), tu met un point a chaque fin de ligne?

    cela dépend de la façon dont la grammaire est définie, certains langage considèrent que l'habitude est de mettre une instruction par ligne et considère le cas d'utiliser plusieurs lignes comme le cas inhabituel.

    c'est pour cela par exemple que dans certains langage (shell, makefile, ... entre autre) tu n'as pas de caractères pour indiquer la fin de ligne, cependant tu as un caractère pour indiquer que ta ligne continue après le saut de lignes si besoin.
    En fait, j'ai fait mes classes en C, donc le jour où j'ai fait un peu de vb le premier truc qui m'a géné c'est l'absence de ";". Cela ne représente que mon avis.

  11. #31
    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
    Accrochez-vous bien, ma hantise c'est le PHP!

    Oui je sais que pour beaucoup de gens ce langage a tout pour plaire,

    • il est simple et facile à apprendre on arrive très vite à un résultat

    • il y a une commnauté active derrière

    • c'est bien documenté

    • c'est bien standardisé

    • c'est pas cher à héberger...

    • etc...



    Mais alors qu'est-ce que je lui reproche? Cet horrible laxisme dans sa syntaxe, son typage à la noix qui permet aux gens de comparer des choux avec des chèvres, d'additionner des strings à des entiers et de multiplier tout ça par un tableau de booléen (enfin peut être quand même pas mais pas loin).

    Résultat : les ide sont limités dans leur fonctionnalité de refactoring et d'autocomplétion, les chances qu'un algo faux marche par bol en dév et casse en production sont très élevées. Aucune erreur, aucun warning à la compilation et difficile de tester un programme si on n'atteint pas les 100% de code coverage.

    Voilà, je sais reconnaître qu'il a des qualités, mais je n'aime vraiment pas bosser avec. J'ai l'impression que c'est trop du bricolage...

  12. #32
    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 _skip Voir le message
    Aucune erreur, aucun warning à la compilation et difficile de tester un programme si on n'atteint pas les 100% de code coverage.
    ça, ça se configure.

    Mais je suis d'accord avec ce que tu reproche à PHP. J'ajouterais bien un tas de trucs, mais la plupart sont ajoutés dans la prochaine version (pas de namespace, pas de garbage collection, etc . . .).

    Ceci dit, j'aime bien PHP, on a une productivité d'enfer avec si on l'utilise bien (mais alors, combien de fois j'ai vu du code PHP absolument horrible et du coup, pratiquement indébuggable !).

  13. #33
    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
    Euh... À mon avis les 2 du dessus vous confondez langage et programmeur...

    Le C aussi te permet de comparer des pommes avec des poires, le C++ aussi, et jusqu'à une certaine mesure, à peu près tous les langages...

  14. #34
    Membre chevronné

    Homme Profil pro
    Architecte logiciel
    Inscrit en
    Novembre 2006
    Messages
    1 252
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    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
    Mmm, disons qu'en php, en plus d'accepter des comparaisons hétérogènes, on aboutit à des résultats déroutants :

    $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 !

  15. #35
    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 JulienDuSud Voir le message
    Euh... À mon avis les 2 du dessus vous confondez langage et programmeur...
    Le C aussi te permet de comparer des pommes avec des poires, le C++ aussi, et jusqu'à une certaine mesure, à peu près tous les langages...
    Au moins tu sais si les variables avec lesquels tu travailles et les paramètres que tu passes aux fonctions c'est du lard ou du cochon. C'est agréable tu sais quand tu fais du refactoring que le compilateur détecte les erreurs...

    C'est aussi agréable de ne pas avoir besoin d'un test unitaire pour savoir que tu as pas fait une faute d'orthographe dans le nom d'une variable lors d'une affectation.

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

    Informations forums :
    Inscription : Décembre 2007
    Messages : 6 804
    Points : 32 082
    Points
    32 082
    Par défaut
    perso, je déteste tout langage qui remplace le civilisé

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if blala
       (.../...)
    else
       (.../...)
    end if
    par le barbare
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if (blala){
       (.../...)}
    else{
       (.../...)}
    les intéressés se reconnaitront(enfin, mon code à accolades est certainement faux, mais c'est pour l'exemple). Évidemment, c'est du troll, mais je n'ai jamais réussi à me retrouver dans toutes ces horreurs de crochets-accolades-parenthèses dans tous les sens, la ou un mot complet(4 misérables caractères de plus à taper) est tellement plus lisible.

    Je ne parle même pas des langages qui ne permettent même pas de faire un switch sur un booléen, s'interdisant ainsi l'élégant et efficace
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    select case true
       case a=0
          (.../...)
       case a=2
          (.../...)
       case a>4
          (.../...)
       case b=c
          (.../...)
       case else
          (.../...)
    end select
    en le remplaçant par un illisible salmigondis de if & elseif imbriqués avec des parenthèses partout, le meilleur moyen pour se paumer dans l'enchevêtrement des conditions.(parceque oui, il existe souvent des specs assez tordues pour exiger un code comme celui-ci).

    (bon, je me planque, les puristes vont me flamber, je sens.....)

  17. #37
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 379
    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 379
    Points : 41 573
    Points
    41 573
    Par défaut
    Citation Envoyé par el_slapper Voir le message
    en le remplaçant par un illisible salmigondis de if & elseif imbriqués avec des parenthèses partout, le meilleur moyen pour se paumer dans l'enchevêtrement des conditions.(parceque oui, il existe souvent des specs assez tordues pour exiger un code comme celui-ci).

    (bon, je me planque, les puristes vont me flamber, je sens.....)
    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)

    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)

    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)

  18. #38
    Expert éminent sénior

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

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 610
    Points : 17 923
    Points
    17 923
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par Médinoc Voir le message
    (car ils introduisent un nouvel usage pour inférieur et supérieur <> alors que ce sont toujours aussi des opérateurs de comparaison)
    sans compter (ce qu'on m'a défendu par ailleurs comme "une des puissances" ()) la surcharge de ceux-ci plus quelques autres aussi courant : +, -, *, / ...

    Ce qui fait que toute personne (même hyper-compétente) arrivant devant un code C++ (ou autre du style) ne sait pas, a priori, si il s'agit d'une additon quand on voit "+", par exemple...


    C'est pour moi le comble de l'obfuscation... (sous un prétexte fallacieux de "souplesse"...)

  19. #39
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 379
    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 379
    Points : 41 573
    Points
    41 573
    Par défaut
    Pour moi, je dirais que comme toute chose, ça dépend de l'usage qui en est fait.

    Par exemple, je ne vois aucun inconvénient à définir un opérateur d'addition pour une classe de chaîne de caractères, par exemple. Mais pour d'autres choses comme l'ajout d'un élément à une liste, ça devient de l'abus.

    Mais ce qui m'énerve le plus avec ça, ce sont les surcharges d'opérateurs qui ne respectent plus le contrat de l'opérateur: Notamment, quand les gens confondent + et +=...

  20. #40
    Expert éminent sénior

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

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 610
    Points : 17 923
    Points
    17 923
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par Médinoc Voir le message
    Pour moi, je dirais que comme toute chose, ça dépend de l'usage qui en est fait.

    Par exemple, je ne vois aucun inconvénient à définir un opérateur d'addition pour une classe de chaîne de caractères, par exemple. Mais pour d'autres choses comme l'ajout d'un élément à une liste, ça devient de l'abus.

    Mais ce qui m'énerve le plus avec ça, ce sont les surcharges d'opérateurs qui ne respectent plus le contrat de l'opérateur: Notamment, quand les gens confondent + et +=...
    oui, mais rien ne garantit que "+" ne sera pas surchargé en "-" ou en "/", par exemple...

    On est lié au bon vouloir du programmeur..

    Ce qui, si on tombe dans un gros code sale (ça arrive), ou dont l'auteur est relativement inconnu ou est un geek ou un chercheur, ben, faut remonter toute la chaîne pour savoir si "+" fait bien "+"...

    Alors moi, ce genre de langage, et de "features", non seulement ça me laisse froid, mais c'est tout simplement absurde...

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