Salut !

Comme particularités qui font un langage difficile, que je redéfinierais en particularité d'un langage qui rendent sa programmation moins rapide parce que ralentissant la phase de codage par des considérations propres à la syntaxe ou à la sémentique éloignées du fonctionnement même du logiciel qu'on cherche à créer, je rajouterais aux propos de Yannick:

* la sensibilité à la cass. Encore que sur ce point cela peut très bien être la faute de l'IDE qui n'ajuste pas automatiquement les majuscules et minuscules des mots clés; Et entre nous, c'est peut-être le point qui me fait le plus ch... chez certains langages de programmation (c, c++, java,...).

* l'absence de garbage collector ou cet outil intégré sensé supprimer automatiquement de la mémoire les variables et objets non utilisés; Obligeant dès lors à le faire manuellement.

* le typage fort, voir même stricte. Ou cette propention à exiger les déclarations obligatoires de type, qui exclu dans certains langages les convertions implicite de types.

* les noms de constantes globales, fonctions, objets, et bibliothèque peu évocateurs parce que trop court ou trop codifié. Ici, je dénonce le défaut de signification des mots ou groupes de mots entrant dans la désignation des antités du langage.
Le c++ est pointé du doigts.

* Le côté usine à gaz du langage. Par exemple, dans le vb.net, pour atteindre un objet, on est parfois obligé d'entrer dans l'objet d'un objet d'un objet d'un objet...
Et si en plus c'est mal nommé comme relevé dans le point précédent...

* le manque de cohérence dans le langage. Par exemple, en VBA access, il m'est arrivé de trouver que pour qu'une date soit acceptée par un control, il fallait d'abord la convertir en variable de type double... alors que le type date existe bien. Illogique ! Imaginez combien de temps on peut mettre avant de comprendre ce genre de bizarreries. Ou même encore des conventions de nommage ou de structuration différentes d'une bibliothèque à l'autre, d'une classe à l'autre, etc.

* la difficulté à y créer des interfaces graphique. Avez-vous par exemple déja observé le code de l'interface d'une fenêtre MFC faite en c++ ? C'est à donner des meaux de tête. Mais sur ce point, des fonctionnalités de l'IDE peuvent très bien aider l'utilisateur et masquer la complexité du code de l'interface mis en arrière plan.

* la complexité des concepts du langages. Je prendrais pour preuve celui des pointeurs dans le c++. D'autres langage ont simplifié ce concept en créant celui des références, mais cela n'en reste pas moins obligatoire à certains moment, et requière dès lors plus de vigilence que d'habitude.

* la permissivité de l'écriture du code. Là, ce sont principalement les langages à accolades que j'incrimine. En effet, on peut carrément y écrire l'accolade ou on veut, sans indentation et avec aucune règle d'espacement, donnant à certains codes l'allure de spaguetty. Ce qui complique considérablement la tache lors de la lecture. Alors qu'en visual basic ou en python, le code est automatiquement ou obligatoirement indenté, et les blocks facilement identifiables.

Je m'arrêterais là.

Yannick Daniel Youalé
La programmation est une religion. Aimez-la, ou quittez-la.








----- Original Message ----- From: "yannick" <[email protected]>
To: <[email protected]>
Sent: Sunday, January 26, 2014 3:41 PM
Subject: [progliste] Re: Difficultés des langages


slt JF,
plus il y a de concept, plus c'est difficile ,
donc moins  il y a de concept, plus c'est simple,
et plus c'est simple, et moins ce langage a d'intérêt .
ps :
mes msg peuvent comporter des erreurs de frappe car je n'ai plus de pile, et donc des fois j'ai la flegme de corriger ...


----- Original Message ----- From: "Jean-François Colas" <[email protected]>
To: <[email protected]>
Sent: Sunday, January 26, 2014 3:32 PM
Subject: [progliste] Difficultés des langages


Hello la ML,

Histoire de "rebondir", il me vient une question à laquelle je n'ai pas vraiment pris le temps de réfléchir, pour autant que j'aie d'ailleurs assez d'éléments pour ça... Attention, question simple, mais vaste: Qu'est-ce qui rend à votre avis, un langage plus ou moins facile ou plus ou moins difficile?

J.-F.

Le 26/01/2014 10:57, QuentinC a écrit :
Mettez-vous au C++, au moins ça mettra tout le monde d'accord.
* Multiplatforme si on utilise des bibliothèques multiplatformes. Un jour faudra se pencher sur WXWidgets la bibliothèque mère pour les GUI accessibles et multiplatformes * Pas de framework volumineux à installer et à fournir ou faire installer par l'utilisateur
* Exécution directe, pas de wrapper comme py2exe
* Pas de langage propriétaire
* ON peut faire des logiciels portables avec (portable = ici sans installation)
* Répertoire quasi infini de bibliothèques utilisables


LE seul prix à payer, c'est la difficulté; je reconnais que le C++ est un langage très difficile, je dirais même, le, plus, dificile; mais avec l'habitude on finit par s'en sortir de façon raisonnablement correcte. A noter que je ne suis pas un expert du C++ non plus, il y a encore plein de facettes que je ne connais pas, mais c'est tellement vaste...

Progliste :
Pour se désinscrire de la liste : mailto:[email protected]?subject=unsubscribe

Pour voir les archives de la liste :
http://www.mail-archive.com/[email protected]/

Je vous rappelle que les pièces jointe sont activés leur taille est limité à 2 MO
Pour accéder aux fichiers de la liste
http://outils.archive-host.com/partage.php?id=2Qar9Hy6ftzr
Ou en utilisant la nouvelle page de partage :
http://outils-n.archive-host.com/partage-fm0m7b947vglikp9Efpso94gt
Pour y ajouter des fichiers demandez-moi le ou sur la liste ou en privé, je vous répondrez en privé.



Progliste :
Pour se désinscrire de la liste : mailto:[email protected]?subject=unsubscribe

Pour voir les archives de la liste :
http://www.mail-archive.com/[email protected]/
Je vous rappelle que les pièces jointe sont activés leur taille est limité à 2 MO
Pour accéder aux fichiers de la liste
http://outils.archive-host.com/partage.php?id=2Qar9Hy6ftzr
Ou en utilisant la nouvelle page de partage :
http://outils-n.archive-host.com/partage-fm0m7b947vglikp9Efpso94gt
Pour y ajouter des fichiers demandez-moi le ou sur la liste ou en privé, je vous répondrez en privé.


Progliste :
Pour se désinscrire de la liste : mailto:[email protected]?subject=unsubscribe

Pour voir les archives de la liste :
http://www.mail-archive.com/[email protected]/
Je vous rappelle que les pièces jointe sont activés leur taille est limité à 2 MO
Pour accéder aux fichiers de la liste
http://outils.archive-host.com/partage.php?id=2Qar9Hy6ftzr
Ou en utilisant la nouvelle page de partage :
http://outils-n.archive-host.com/partage-fm0m7b947vglikp9Efpso94gt
Pour y ajouter des fichiers demandez-moi le ou sur la liste ou en privé, je vous répondrez en privé.




Progliste :
Pour se désinscrire de la liste : 
mailto:[email protected]?subject=unsubscribe

Pour voir les archives de la liste :
http://www.mail-archive.com/[email protected]/       

Je vous rappelle que les pièces jointe sont activés leur taille est limité à 2 MO
Pour accéder aux fichiers de la liste
http://outils.archive-host.com/partage.php?id=2Qar9Hy6ftzr
Ou en utilisant la nouvelle page de partage :
http://outils-n.archive-host.com/partage-fm0m7b947vglikp9Efpso94gt
Pour y ajouter des fichiers demandez-moi le ou sur la liste ou en privé, je 
vous répondrez en privé.
        
        

Répondre à