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 :

Quel avenir du C++ par rapport au C# ou à Java ?


Sujet :

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

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre émérite
    Avatar de GnuVince
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2004
    Messages
    679
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2004
    Messages : 679
    Par défaut
    Je pense que de plus en plus, C++ va devenir un langage comme FORTRAN ou COBOL: utilisé quand on a besoin de plus de vitesse ou pour de la maintenance de vieux logiciels. C++ a été bon pendant un temps, mais il vient le temps de changer.

    - Sécurité: du C++ "unmanaged", c'est pas ce qu'il y a de plus sécure. Il y a plein de monde qui disent "Ah, si tu sais ce que tu fais, t'auras pas de problèmes!" Ben, j'ai des nouvelles pour vous: la gang de OpenBSD, des gars obsédés par la sécurité et qui codent en C et C++ trouvent des trous de sécurité à tout bout de champ! Venez pas me dire que parce que vous savez comment les pointers ou la gestion de la mémoire fonctionnent que vous allez jamais vous tromper. Les langages de haut niveau qui automatisent ces tâches, les cachent derrière une couche d'abstraction sont vos amis.

    - Rapidité de développement: la vitesse d'exécution d'un programme, bien qu'encore importante, n'a plus l'importance qu'elle avait dans les années 70, 80 et 90. Les CPU sont rendus très rapides, les compilateurs optimisent le code comme ça se peut pas, donc tant qu'on fait pas de conneries dans son code, la performance du programme va être acceptable (surtout dans une application graphique, où elle passe 90% de son temps à rien faire: peut-on optimiser le rien-faisage?) La performance d'un programmeur par contre n'a pas vraiment changé, un programmeur peut encore n'écrire que n lignes de codes par jour. Si les lignes de codes qu'il écrit accomplissent plus d'opérations, s'il n'a pas besoin d'écrire certaines fonctions, s'il peut réutiliser facilement du code qu'il a déja écrit, s'il n'a pas à effectuer lui-même certaines opérations fastidieuses (telle que la gestion de la mémoire) etc. cela lui permet d'accomplir plus en moins de temps. Dans un monde où on veut tout immédiatement, recourir à un langage de haut niveau n'est pas un luxe: c'est un "must".

    - Fonctionnalités qui n'existent pas: plus l'utilisation de logiciels devient courante, plus les usagers sont exigeants. Viendra-t-il un temps où C++ ne pourra pas fournir certaines fonctionnalités? Je le pense. Par exemple, pour mettre une application à jour, pourquoi est-ce que ça ne pourrait pas être comme dans le monde Smalltalk: on change l'image et *pouf* le programme s'adapte (s'il a été conçu avec ce genre de changements en tête, bien sûr). Cela permet à un système d'être fonctionnel 100% du temps, sans empêcher les mises à jour.

    Le plus grand obstacle selon moi à l'adoption d'autres langages pour la programmation d'applications (je ne parle pas de programmation système, car c'est un domaine où je n'y connais rien) c'est la mentalité du programmeur. Il y a un gars sur la première ou deuxième page qui dit qu'il ne peut pas imaginer une grosse application sans pointeur. Le monde va t'il finir par accepter du byte-code JITé à l'exécution, ou voudra-t-il toujours du code natif? Est-ce que seulement les langages impératifs et OO dérivés d'un langage impératif (C++, Java, C#) vont être vus comme étant sérieux, ou si des langages fonctionnels (Haskell, O'Caml, SML, Erlan) ou des langages OO purs (Smalltalk, Eiffel, Ruby) vont pouvoir devenir de sérieuses alternatives? Est-ce que le typage statique de type Hindley-Milner va faire son apparition dans Java ou C#? Est-ce que le typage dynamique va continuer à effrayer les programmeurs habitués au typage statique? Est-ce que des langages n'étant pas uniquement ASCII (langages avec des images, avec lesquels on pourrait faire des liens en tirant des lignes, etc.) pourront attirer les programmeurs?

    Mais, oui je crois que l'utilisation de C++ pour de nouveaux projets va diminuer. On le voit déja ici: les utilisateurs du langage Delphi sont très nombreux, idem pour les développeurs Java et .NET.

    Vincent.

    P.S: Soit dit en passant, en terme de performances dans le domaine du 3D, il semblerait que la version C#/.NET de l'engin Ogre (C++), Axiom, soit plus rapide que la version C++

    http://www.gamedev.net/community/forums/topic.asp?topic_id=200089&whichpage=5

  2. #2
    Invité
    Invité(e)
    Par défaut
    J'avoue que le C++ à perdu de sont utilité dans la section des applications standards. Ex: BD, logiciels coté client etc. Mais si on continue de mettre des couches d'abstraction entre le programmeur et la machine, l'emploi la programmation va simplement être faite par un générateur de code automatique. C'est sur que la on va ce foutre de la mémoire. On ne sera peut-être plus c'est quoi ! Ok, j'exagère mais bon, la programmation n'est pas simplement le fait de monter des logiciel parfait pour une compagnie quelconque mais c'est aussi un art. Moi j'ai du plaisir à réparer mes bug, corriger des erreurs de logiques et optimiser mon code. La programmation 3D (directX et OpenGL) est aussi un art. Oui, C# est aussi bon que C++ dans ce domaine. Mais faut remercier le monde en arrière de .Net, qui, d'après moi, a été codé en c++ avec sûrement une touche d’asm.

    Alors je dis, oui au langage de haut niveau pour fabriquer des logiciels rapidement mais il ne faut certainement pas oublier le C++ car il reste une fondamentale. Je le vois maintenant plus comme un outil, ou un langage complémentaire, un peu comme le riz dans une assiette de steak. Tu as besoin de vitesse à cet endroit? Parfait fait un .dll en C++.

    Etienne

  3. #3
    Membre confirmé
    Inscrit en
    Avril 2003
    Messages
    80
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 80
    Par défaut
    Les choses bougent et les futures OS windows inclueront .net en natif, ce qui permettra d'écrire certaines parties sensibles en .net même si c'est moins efficace (mais pour un début, c'est interessant), et de là, à ce qu'une génération de processeurs fonctionnent avec des instructions d'une autre technologie, il n'y a qu'un pas. Ce que je dis est purement fantaisiste aujourd'hui, mais il arrivera un moment où les processeurs "migreront" vers un tout nouveau système qui fera alors oublier les instructiosn assembleurs ...

  4. #4
    Membre confirmé
    Inscrit en
    Avril 2004
    Messages
    125
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 125
    Par défaut ...........
    Oufff.....le C++,il n'y a rien a faire,va toujours assurer et va toujours racler le top sur les languages de sa generation et celle de la nouvelle generation....
    Pour moi,il y a deux camps chez les programmeurs:

    *il y a un groupe qui se resigne a croire que le software de grande qualite doit suivre fidelement les dernieres sortie en hardware.C'est clair,le hard et le soft doivent s'accompagner pour pouvoir beneficier pleinement aussi du hard que du soft.
    Mais je pense qu'il ya un effort qui peut se faire du coté des developpeurs,pour palier a ce fait.Si les programmes sont ecrits dans des languages plus robustes,bien sur,plus fastidieux.le materiel ne ferait plus la grande partie du boulot come on le remarque maintenant avec les accelerateurs 3D,par exemple.Et c'est la ou des langages comme le C++ feront toujours la difference.

    *Il y a un autre groupe,"je ne suis pas inquiété par la difficulte du travail a faire,je veux apres tout du beau boulot,j'utilise C/C++"
    Par contre il faut aussi penser que pour des choses qui exigent moins,on peut y aller avec des langauges moins robustes.
    Pourquoi faire complique si on peut faire simple.

    Et les OS,on ne va pas les ecrire en JAVA ou C# non?????quand meme....il faudrait imperativement avoir un P5(je ne sais si c'est le nom du sucesseur de la famile des P4) pour pouvoir utiliser cet OS la....
    Si les languages deviennent de plus en plus faciles,les ordi deviendront de plus en plus gourmands en ressources,heureusement que C++ serait la pour frener tout ca....

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2004
    Messages
    133
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2004
    Messages : 133
    Par défaut
    je dois dire que coté performance le C++ tue le c# et le java et question fonctionnalite il apporte la meme chose cependant en terme de portabilite de code et de ligne de code la il est totalement dépassé.

    Ps : c# dans sa version 2.0 offre tout ce que c++ propose. A bon entendeur....

  6. #6
    Candidat au Club
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 3
    Par défaut
    Autant je comprends l'interet de java pour le développement rapide d'interfaces graphiques ou d'applications distribuées, autant je n'ai jamais accroché au C++. Pour moi le C++ c'est un langage batard qui les inconvénients du C sans profiter de ses avantages et passe a coté de l'interet de la programmation orientée objet, a savoir la programmation de haut niveau.
    Quand les industriels feront leur projet en C++ et plus en ada, pour ce qui est des applications critiques, je reverrai peut etre mon jugement.
    Java au moins ne prétend pas etre la panacée, et fait bien ce pour quoi il a été concu.

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    52
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 52
    Par défaut
    Pour moi le C++ c'est un langage batard qui a les inconvénients du C sans profiter de ses avantages et passe a coté de l'interet de la programmation orientée objet, a savoir la programmation de haut niveau.
    Tu vas faire hurler plus d'un programmeur en proclamant ça ! Moi y compris. Pourtant, j'apprécie tout autant la programmation JAVA que C++.

    Petite question, connais-tu ton sujet ? Parce-que là franchement. Soit tu n'y connais rien, soit tu es un pro-javaiste qui a décidé de prendre en grippe le C++ et qui ne cherche pas plus loin que le bout de son clavier.

  8. #8
    Membre confirmé
    Inscrit en
    Avril 2004
    Messages
    125
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 125
    Par défaut
    je dois dire que coté performance le C++ tue le c# et le java et question fonctionnalite il apporte la meme chose cependant en terme de portabilite de code et de ligne de code la il est totalement dépassé
    je ne suis d'accord quand tu parles de perfomances mais en ce qui concerne le fait qu'il soit depassé,on aurait vraiment du mal a faire certaines choses avec C# et JAVA.
    Alors il ne serait jamais depassé.comme si on pouvait se passer de asm

  9. #9
    Membre éprouvé Avatar de kaisse
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    100
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 100
    Par défaut
    Citation Envoyé par Ptibibi
    Pour moi le C++ c'est un langage batard qui a les inconvénients du C sans profiter de ses avantages et passe a coté de l'interet de la programmation orientée objet, a savoir la programmation de haut niveau.
    Tu vas faire hurler plus d'un programmeur en proclamant ça ! Moi y compris. Pourtant, j'apprécie tout autant la programmation JAVA que C++.

    Petite question, connais-tu ton sujet ? Parce-que là franchement. Soit tu n'y connais rien, soit tu es un pro-javaiste qui a décidé de prendre en grippe le C++ et qui ne cherche pas plus loin que le bout de son clavier.
    Ouïe, je suis même impressioné qu'il n'y ait eu qu'une réaction pour l'instant . Je vais revenir sur ce qu'à dit mije. En fait, je suis d'accord sur l'idée que c'est un langage batard, même si je ne suis pas trop d'accord pour le terme qui est trop péjoratif à mon gout.
    Je maitrise trois langages: C, C++ et Java. J'ai fait le compte des projets et autres petits programmes que j'ai développés cette année et je me suis rendu compte que je n'ai pas fait un seul projet de taille moyenne ou grande en C++ (le plus gros que j'ai fait contient deux headers et trois fichiers cpp). Je me suis alors demandé pouquoi ?

    J'ai beaucoup utilisé le C pour faire des utilitaires de traitements de fichiers et de données basiques, mais aussi pour implémenter des algorithmes de chiffrement. On veut que ces taches soient efficaces, rapides. De plus, elle ne nécessite pas de grande abstraction. J'ai donc naturellement utiliser le C.

    J'ai aussi du programmer deux projets assez costauds, un pour la fac et un pour un stage. Il fallait une belle GUI, quelque chose d'extensible de portable et de tout chouette. Pour toutes ces raisons, et aussi parce que un garbage collector ça aide !, j'ai développé ces deux "grosses" applis en Java.

    Mais alors avec quelles applications serait-il judicieux de programmer en C++ ? Et bien justement, celles qui regroupent ces deux exigences: quelque chose de portable, extensible, réutilisable, bref un gros projet, mais avec des exigences particulière sur la rapidité, l'efficacité, l'espace mémoire occupé. Je pense que les grosses applications scientifiques, nécessitant de gros calculs (par exemple les simulations de systèmes physiques-météorologique etc...) doivent être friandes de C++.

    Et puis pour tout avouer, il y a aussi le fait que le C++ ne se maitrise pas comme ça. J'ai mis environ un an à bien maitriser le Java. Non que c'était difficile, mais j'apprenais en même temps la programmation, et au départ, ne connaissant pas le domaine, je n'étais pas passioné par l'informatique. Quant au C, j'ai vraiment mis 5 mois à bien le maitriser, et même si au départ, ca me parraissait moins touffu que le java (du fait de l'API), il s'est révélé que ce langage était plus fin, plus difficile à maitriser.

    Et bien le C++ justement est encore plus difficile à assimiler. Du fait de son aspect objet, il demande une grande abstraction, mais demande encore beaucoup de connaissances techniques, puisque le système d'allocation-desallocation de mémoire est toujours utilisé. Aprés un an de pratique, je trouve encore que mon code est innaproprié quand je programme en C++. Soit je bidouille comme du C, soit je fait du copier-coller de Java et je déclare des class à tort et à travers. Sans parler de la déclaration de classes ou de fonctions templates ...

    En résumé, d'aprés mon expérience, le C++ est un langage qui demande beaucoup de maturité de la part du programmeur. Aussi, quand les entreprises développent des applis, si elles peuvent se passer du C++ pour utiliser un autre langage elles le feront. C'est pourquoi, à mon humble avis, le C++ est relativement peu utilisé par rapport à d'autres langages comme le Java, mais par contre, les domaines qui l'utilisent ne sont pas prêts de changer de langage.

  10. #10
    Membre très actif
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    258
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 258
    Par défaut
    Citation Envoyé par kaisse
    Quant au C, j'ai vraiment mis 5 mois à bien le maitriser
    5 mois ? Ca fait 3 ans et demi que je fais du C et je ne dirais pas que je le maîtrise à 60 voir 70%. Et pourtant j'en fais pratiquement tout les jours plusieurs heures ...
    Citation Envoyé par kaisse
    Et bien le C++ justement est encore plus difficile à assimiler. Du fait de son aspect objet, il demande une grande abstraction, mais demande encore beaucoup de connaissances techniques, puisque le système d'allocation-desallocation de mémoire est toujours utilisé. Aprés un an de pratique, je trouve encore que mon code est innaproprié quand je programme en C++. Soit je bidouille comme du C, soit je fait du copier-coller de Java et je déclare des class à tort et à travers. Sans parler de la déclaration de classes ou de fonctions templates ...
    Je ne suis pas d'accord. Le C++ offre tout un tas de facilité pour le programmeur. Je pense notemment à la STL grâce à qui on ne devrait plus jamais avoir à faire de new pour déclarer et utiliser un tableau. Je pense égalements aux fonctions templates qui permettent de se passer du type void* etc... Tout ca facilite énormément l'appréhension de la "programmation" plus que de la "manière de programmer". J'entends par là que le C++ (et encore plus le Java) permet de se concentrer sur l'algorithme et la structure plus que sur la gestion de la mémoire et compagnie. Le C++ peut se maîtriser plus rapidement que le C si on fait preuve d'une certaine rigueur.
    Citation Envoyé par kaisse
    En résumé, d'aprés mon expérience, le C++ est un langage qui demande beaucoup de maturité de la part du programmeur. Aussi, quand les entreprises développent des applis, si elles peuvent se passer du C++ pour utiliser un autre langage elles le feront. C'est pourquoi, à mon humble avis, le C++ est relativement peu utilisé par rapport à d'autres langages comme le Java, mais par contre, les domaines qui l'utilisent ne sont pas prêts de changer de langage.
    Ah non là je suis pas d'accord du tout du tout du tout. Le C demande une très très grande maturité de la part du programmeur car il va devoir tout faire à la main, tout gérer et tout optimiser ! Le C++ te tiens quand même par la main pour de nombreuses choses que tu n'as pas à recoder !

    Seulement ces 2 langages ne sont pas des langages pour débutant, ils nécessitent une immense rigueur envers soi-même et les codes qu'on écrit. Ils demandent de constamment se remettre en question et remettre en question ce qui étais vrai hier. Très peu de personnes peuvent prétendre faire du bon C, beaucoup plus peuvent dire faire du bon C++.

  11. #11
    mat.M
    Invité(e)
    Par défaut
    En fait, je suis d'accord sur l'idée que c'est un langage batard,
    Tout à fait ( cela a déjà été dit sans doute précedemment ) : C++ est une surcouche objet comme chacun le sait sur le language C.

    Et les OS,on ne va pas les ecrire en JAVA ou C# non?????quand meme....il faudrait imperativement avoir un P5(je ne sais si c'est le nom du sucesseur de la famile des P4) pour pouvoir utiliser cet OS la....
    AU niveau du CPU
    il faudra tjs du code machine et des instructions comme MOV EAX , JMP etc.
    Le CPU qui traitent des instructions comme try , catch , if().... ect n'existe pas

    A moins qu'une nouvelle génération de processeurs évolués soient fabriqués.
    A vous de les imaginer

    Ce que je dis est purement fantaisiste aujourd'hui, mais il arrivera un moment où les processeurs "migreront" vers un tout nouveau système qui fera alors oublier les instructiosn assembleurs ...
    cf remarque précédente

    Seulement ces 2 langages ne sont pas des langages pour débutant, ils nécessitent une immense rigueur envers soi-même et les codes qu'on écrit.
    Bjarne Soustrup a voulu développer , à mon sens , un language faisant preuve de trop d'abstraction et complexité qui est souvent difficile à appliquer en pratique

  12. #12
    Membre éprouvé Avatar de kaisse
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    100
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 100
    Par défaut
    Citation Envoyé par Yabo
    Citation Envoyé par kaisse
    Quant au C, j'ai vraiment mis 5 mois à bien le maitriser
    5 mois ? Ca fait 3 ans et demi que je fais du C et je ne dirais pas que je le maîtrise à 60 voir 70%. Et pourtant j'en fais pratiquement tout les jours plusieurs heures ...
    Il faut s'entendre sur maitriser je pense. C'est surement prétentieux de ma part en effet, j'aurais du employer un autre terme. Disons que j'ai mis 5 mois à génerer du code C cohérent et standard, c'est ca ce que je voulais dire par "maitriser". Presque tout ce que j'ai écris en C pendant ses 5 mois était soit plein d'erreurs, soit vraiment trés laid. Aprés 5 mois, mes fonctions avaient des buts précis, et elles commencaient à faire les choses proprement, notamment au niveau de la mémoire. C'est aprés ces 5 mois que je ne traitais plus les tableaux et les pointeurs de la même manière.

    Ca fait maintenant un an que je fais du C, et j'en apprends encore tous les jours (enfin tous les jours où j'en fais ). Je sais que j'ai encore beaucoup de chemin et de travail avant d'avoir une "bonne maitrise". Rien qu'à en juger par tes (Yabo) posts sur le forum C, il me faudra du temps pour prétendre avoir le même niveau.

    Pour les remarques sur le C++:
    effectivement la STL simplifie énormément les choses. Je suis d'accord pour l'exemple des tableaux que j'agrémenterais d'une anecdote: j'ai relu les projets C++ que j'ai fait depuis le début de l'année: pas un seul tableau de style C, pas une seule utilisation des opérateurs new[] et delete[]: que des vector, list et compagnie ...

    En fait je m'aperçois que je me suis trompé dans mon post: ce n'est pas tant la "maitrise" du langage qui est difficile (compte tenu des facilités que procurent la STL et la conception objet) mais l'apprentissage qui est plus complexe car plus diversifié (valeurs, pointeurs, références, fonctions, classes, surcharge de fonctions, d'opérateurs, templates + apprentissage de la STL, notamment les conteneurs).

    Pardon pour toutes ces erreurs...

  13. #13
    Expert confirmé
    Avatar de Luc Hermitte
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2003
    Messages
    5 296
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Août 2003
    Messages : 5 296
    Par défaut
    Quelques transparents d'une conf d'Herb Sutter qui sont en thème, je pense (*), avec le sujet du fil de discussion : l'avernir du C++.
    http://www.accu.org/conference/prese..._(keynote).pdf

    Les transparents 12 et plus (qui ne parlent pas de syntaxe mais plus d'idiomes) sont je pense les plus intéressants -- bon d'accord, ils comparent l'application type du RAII au dispose pattern des autres langages qui n'ont qu'un GC et finally.

    (*) Bien que cela s'éloigne quelques peu du standard

    PS: les blogs du monsieur et de ses collègues sont également très intéressants.
    Blog|FAQ C++|FAQ fclc++|FAQ Comeau|FAQ C++lite|FAQ BS|Bons livres sur le C++
    Les MP ne sont pas une hotline. Je ne réponds à aucune question technique par le biais de ce média. Et de toutes façons, ma BAL sur dvpz est pleine...

  14. #14
    Membre émérite Avatar de Caine
    Inscrit en
    Mai 2004
    Messages
    1 028
    Détails du profil
    Informations personnelles :
    Âge : 53

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 028
    Par défaut
    Sérieusement,
    ai-je encore, aprés Java et .Net, une chance de trouver un jour une entreprise qui embauche pour développer uniquement en C++.

    Car aprés une formation en cours du soir au Cnam, je suis "mordu" de ce langage.

    Je suis déjà mordu de l'objet, mais maintenant, je souhaiterais vraiment me spécialiser en C++.

    Mais les offres sont de plus en plus rares dans ce cas, est-ce un signe ?

  15. #15
    HRS
    HRS est déconnecté
    Membre chevronné
    Avatar de HRS
    Inscrit en
    Mars 2002
    Messages
    678
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 678
    Par défaut
    plutôt que la connaissance du C++, une entreprise demandera la
    maîtrise de l'outil C++Builder ou VC++

    d'ailleurs .net peut se faire en VC++

  16. #16
    ovh
    ovh est déconnecté
    Rédacteur
    Avatar de ovh
    Homme Profil pro
    Architecte devops web full stack
    Inscrit en
    Mai 2002
    Messages
    3 842
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Architecte devops web full stack

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 842
    Par défaut
    Sinon essaie de te faire embaucher dans une société de dev de jeu, là ils doivent encore bien utiliser ce langage je pense

    Tutoriels sur les UPS, e-commerce, PHP, critiques de livres...

    Pensez à consulter les FAQs et les cours et tutoriels.
    FAQ Linux - Cours et tutoriels Linux - FAQ PHP - Cours et tutoriels PHP
    Ce forum est fait pour vous et surtout par vous, merci d'en respecter les règles.

    Je n'ai rien à voir avec la société www.ovh.com !

  17. #17
    Membre émérite Avatar de Caine
    Inscrit en
    Mai 2004
    Messages
    1 028
    Détails du profil
    Informations personnelles :
    Âge : 53

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 028
    Par défaut
    J'ai la chance d'être en poste.

    Pour moi la question est: Y-a-t-il encore une majorité d'entreprises développant en C++ (quelque soit l'EDI, VC++, C++Builder ou autre)

    Ensuite, mais ceci trouverait ça place dans les débats sur l'embauche, je trouve plus important de connaitre le langage, aprés les outils se ressemblent plus ou moins.

  18. #18
    Expert confirmé
    Avatar de Luc Hermitte
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2003
    Messages
    5 296
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Août 2003
    Messages : 5 296
    Par défaut
    Je détère ce vieux post pour y rajouter une "news" que certains connaissent déjà.

    A brief look at C++0x by Bjarne Stroustrup
    Blog|FAQ C++|FAQ fclc++|FAQ Comeau|FAQ C++lite|FAQ BS|Bons livres sur le C++
    Les MP ne sont pas une hotline. Je ne réponds à aucune question technique par le biais de ce média. Et de toutes façons, ma BAL sur dvpz est pleine...

  19. #19
    Rédacteur en Chef
    Avatar de Marc Lussac
    Homme Profil pro
    Responsable marketing opérationnel
    Inscrit en
    Mars 2002
    Messages
    28 683
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Responsable marketing opérationnel
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Mars 2002
    Messages : 28 683
    Par défaut
    Il semblerais que C++ soit toujours un langage très utilisé, même sur www.developpez.com : C++ est la rubrique numéro 2 en fréquentation, juste derrière Java, ce qui n'est pas rien...
    Ne pas me contacter pour le forum et je ne répondrai à aucune question technique. Pour contacter les différents services du club (publications, partenariats, publicité, ...) : Contacts

    15 000 offres d'emploi développeurs et informatique
    Cours et tutoriels développeurs et informatique
    Les FAQ's & Les Livres
    Codes sources
    Téléchargements

  20. #20
    Candidat au Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2006
    Messages : 3
    Par défaut
    Tout dépend de ce qu'on veut dire par "avenir". Si on parle de l'avenir immédiat C et C++ n'ont rien à craindre. Il y a beaucoup de domaines (systèmes d'exploitation, pilotes, langages, etc.) où ils demeurent la seule option viable. Et puis par rapport à Java/C# la différence n'est pas si grande; personnellement, sous plusieurs aspects, je trouve Java plus pénible à utiliser que C et C++ (C#, je ne le connais pas, mais j'ai entendu de bonnes choses à son sujet). En ce moment j'utilise C++ pour tout ce qui demande de la performance et Ruby pour tout le reste.

    Dans 10-15 ans, la situation sera différente. C et C++ resteront en utilisation (tout langage a son fan club), mais des langages avec GC et bytecode comme Java et C# (ou peut-être un nouveau langage, qui sait) les auront remplacés à peu près partout, tout simplement parce que les progrès en matière de JIT auront comblé la différence de performance. En d'autres mots, la JVM sera écrite en Java, le système d'exploitation sera écrit en Java, et ça sera aussi performant que si tout avait été écrit en C, sinon davantage.

    Le principe dont il faut se rappeler c'est que plus un langage est bas niveau, moins le compilateur/interpréteur/jit a de latitude pour optimiser. Si le programmeur est meilleur que la machine pour prendre soin des détails de bas niveau, ça va bien, mais à mesure que la machine devient plus sophistiquée, de moins en moins de programmeurs seront meilleurs qu'elle et soudainement les malloc, free, l'arithmétique de pointeurs et cie deviennent non seulement inutiles mais problématiques: disons que le compilateur voit un new Patapouf() dans le code qui ne sort pas de la portée de la fonction et qui n'est pas libéré. Il aimerait bien remplacer ça par une allocation sur la pile. Mais est-ce qu'il a le droit de le faire? Qu'est-ce qui se passe si c'était intentionnel et que le programmeur manipule des pointeurs on ne sait trop comment pour aller chercher cet objet par la suite? S'il prend le risque de changer le code, comment expliquer au programmeur pourquoi ça ne marche pas?

    En d'autres mots, les langages de haut niveau vont éventuellement battre les langages de bas niveau. C'est inéluctable. Si vous voulez un exemple, Stalin, un compilateur Scheme, est déjà capable de générer du code C plus performant que ce qu'un humain moyen pourrait faire à la main. Bien sûr, ça prend un temps fou à compiler, mais cela deviendra raisonnable avant longtemps. Comme Java et C# sont relativement proches de C et C++, ils seront probablement à leur niveau dans peu de temps. Suivront les langages dynamiques comme Python ou Ruby et puis qui sait quoi par la suite.

    Je précise toutefois que ça va prendre des dizaines d'années.

Discussions similaires

  1. Quel intéret du Portage par rapport à indépendant ?
    Par sylk974 dans le forum Structure
    Réponses: 20
    Dernier message: 01/03/2019, 08h46
  2. Réponses: 1
    Dernier message: 16/08/2010, 10h34
  3. Réponses: 2
    Dernier message: 31/10/2009, 15h01
  4. Quel est l'intéret de Google Chrome OS par rapport à Android ?
    Par Annaelle32 dans le forum Actualités
    Réponses: 16
    Dernier message: 13/07/2009, 18h38
  5. Réponses: 1
    Dernier message: 30/04/2007, 10h13

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