Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Les meilleurs programmeurs sont-ils ceux qui disent connaître C++ ?
Pas si sûr...

Le , par Katleen Erna

23PARTAGES

0  0 
Les meilleurs programmeurs sont-ils ceux qui disent connaître C ++ ? Pas si sûr...

L'une des particularité de C++, selon Louis Brandy, est que les programmeurs travaillant avec ce langage se divisent en deux catégories. Ces deux groupes s'opposent frontalement et se considèrent chacun comme le seul ayant raison.

Dans le premier, on trouve les développeurs qui viennent de C, ou d'autres qui pensent maitriser C++ très rapidement. Ce genre d'individu vous dira "je connais C++". Mentent-ils ?

Ce langage peut être vu comme l'ascension d'une montagne. Il y a ceux qui sont en bas et se croient déjà au sommet, et ceux qui ont déjà passé le col. Ceux-là souffrent. C'est la deuxième catégorie de programmeurs : ceux qui en ont déjà vu, et qui se rendent compte de l'extrême complexité du langage. Ce qui amène une certaine frustration sur des centaines de petites choses.

Voici une petite illustration satyrique, toujours de Louis Brandy, des étapes qui précèdent l'arrivée au col :



Source : Le Blog de Louis Brandy

Une erreur dans cette actualité ? Signalez-le nous !

Avatar de Florian Goo
Membre éclairé https://www.developpez.com
Le 02/04/2010 à 15:12
Le petite cerise sur le troll, une citation d'un des commentaires du blog d'où est tiré le graphique :

« C++ makes a good programmer better, and a bad programmer obvious. »

C'est poilu, mais j'adore.
1  0 
Avatar de
https://www.developpez.com
Le 24/05/2010 à 20:17
Bonsoir,
Je vais ajouter une petite réponse. Je ne suis pas programmeur, mais je développe depuis de nombreuses années. C'est à dire que j'essaye de répondre à mes besoins, historiquement aux besoins de la société qui m'employait. Maintenant, je suis en retraite.
A mon avis un programmeur travaille dans un environnement hiérarchisé. Il y a un chef de projet qui, à la limite, n'a jamais écrit une ligne de code, mais il a une logique implacable, un développeur qui essaye de faire la liaison entre le chef de projet et le programmeur, et enfin le programmeur.
Que vient faire dans tout cela le langage utilisé ?, je le compare un peu à la couleur du manche de tourne-vis d'un mécanicien.

J'utilise un compilateur qui permet d'écrire des outils qui me conviennent (CAD-DAO-SIG). Je viens de comprendre que le C++ que j'utilise n'est pas standard. Pourquoi Borland a éprouvé le besoin de faire un langage qui ne respecte pas, ou plutôt qui surcharge le C++ standard? Cela ne me regarde pas, je suis développeur, donc j'utilise un langage créé par des spécialistes bien meilleurs que moi.
Petit exemple simple : traitement d'une chaine.
Le C contient un certain nombre de fonctions de traitement (strcpy, strcat etc. il y en a des quantités).
Le C++ contient une classe std::string (que j'ai découverte aujourd'hui).
Je suppose que si Borland a créé une pseudo-classe AnsiString, c'est parce que c'était utile aux développeurs. Avec les fonctions de base du C on peut traiter toutes les chaines comme on veut. AinsiString offre un confort supplémentaire, mais il ne s'agit toujours là que de la couleur du manche de tourne-vis et ça ne va pas plus loin.

L'argument de portabilité ne me convient pas vraiment. Je pense en particulier à un certain applicatif qui a subit un grand nombre de transpo depuis 25 ans et qui tourne actuellement entre autres en PHP.
Il est vrai que la syntaxe d'une boucle en Fortran, en basic(s) en C(UNIX) en C++(Borland) en PHP, n'est pas la même, mais qu'importe, la logique reste le même.

Ce qui a provoqué cette réponse sont les questions posés par les étudiants. Je crains qu'on leur apprend plus des astuces du langage que l'organisation d'un applicatif (par exemple qu'il est indispensable d'éviter une division par 0).

Bonne soirée.
1  0 
Avatar de jaimepaslesmodozélés
Membre du Club https://www.developpez.com
Le 01/04/2010 à 23:11
j'adore l'image, surtout le point sur les exceptions

C et C++ sont deux langages qui n'ont de commun que la lettre "C" de leur nom.
Passer de C à C++ demande de s'ouvrir à de nouveaux concepts, ne serait-ce que pour l'approche objet (même si certains MacGyver du C prétendent qu'il est "aisé" de faire de l'objet en C).
Passer de C++ à C demande... hou pinaize, non, il faut être taré pour faire ça. Pour ma part, et cela ne concerne que moi, passer du C++ au C aura été symbole de régression et intense torture (pas de booléen, ni de vrai objet, pas de ci pas de ça... maman qu'est ce que je fais là ?).

C et C++ ont chacun leur domaine d'application, ce sont des langages différents, et prétendre en connaitre un premier parce qu'on pratique un second est une preuve de sa méconnaissance du premier (je vais la noter dans un coin cette phrase ^^).
0  0 
Avatar de yostane
Membre régulier https://www.developpez.com
Le 02/04/2010 à 0:10
je ne suis pas d'accord avec l'enchainement des points car il qui peut varier
0  0 
Avatar de Folken Laëneck
Membre régulier https://www.developpez.com
Le 02/04/2010 à 1:02
Citation Envoyé par jaimepaslesmodozélés Voir le message
Passer de C++ à C demande... hou pinaize, non, il faut être taré pour faire ça.
C'est pourtant bien souvent ce qui se passe au cours d'une formation en informatique (En tout cas ce fut le cas lors de la mienne).
Les professeurs d'informatiques seraient-ils tous fous ?
0  0 
Avatar de jaimepaslesmodozélés
Membre du Club https://www.developpez.com
Le 02/04/2010 à 1:17
Citation Envoyé par Folken Laëneck Voir le message
C'est pourtant bien souvent ce qui se passe au cours d'une formation en informatique (En tout cas ce fut le cas lors de la mienne)
Idem, d'où le choc (j'aurai du tourner ma phrase autrement, je ne pense pas que passer du C++ ou C soit une mauvaise chose, bien au contraire, disons juste que c'est tout sauf une promenade de santé, un mauvais moment à passer)
Sont-ils dingues... je ne sais pas, en tout cas il semblerait que de l'autre côté de l'atlantique les jeunes apprennent directement Java, C/C++ passant littéralement à la trappe. Leurs profs sont peut être moins fous, même si je ne regrette absolument pas d'avoir "mis les mains dans l'cambouis", au même titre que l'Assembleur et ces autres outils de torture. Mais je n'y retoucherai pas hein, pas fou.
0  0 
Avatar de threshold
Membre actif https://www.developpez.com
Le 02/04/2010 à 3:34
Les professeurs d'informatiques seraient-ils tous fous ?
A croire que oui ....je suis passé du Java a l'assembleur puis du C++ au C aussi ...
0  0 
Avatar de TabrisLeFol
Membre confirmé https://www.developpez.com
Le 02/04/2010 à 8:27
Il manque un point avant "C with classes".

J'ai honnêtement vu des gens dirent faire du C++ par ce qu'ils utilisent le compilateur C++ et des fichiers en *.cpp ... (*)

Alors oui, ce n'était pas complétement du C, par ce qu'il y avait cout et cin mais tout de même...

Après tout est question de definition, du C est du C++, si on regarde seulement la definition du langage, puisque C++ est un surensemble.

* Cela peut etre des cours aussi.
0  0 
Avatar de laflak
Membre du Club https://www.developpez.com
Le 02/04/2010 à 9:24
Citation Envoyé par TabrisLeFol Voir le message


C++ est un surensemble.

Ca l'a été mais ça ne l'ai plus depuis plus d'une dixaine d'année.
0  0 
Avatar de amaury pouly
Membre actif https://www.developpez.com
Le 02/04/2010 à 9:53
J'aime bien l'image

Citation Envoyé par jaimepaslesmodozélés Voir le message

Passer de C++ à C demande... hou pinaize, non, il faut être taré pour faire ça.
Pour ma part, j'ai commencé par le C++ et une fois que je l'ai bien maîtrisé (c'est à dire longtemps après) j'ai vraiment appris le C. Et çà n'a pas été une régression ! Je suis peut être fou mais j'aime bien C, et puis si on utilise la norme C99 alors une partie des problèmes s'envole (au moins psychologiquement: le type booléen par exemple) et le C++ n'est plus un surensemble.
0  0