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

C++ Discussion :

Pourquoi la communauté C++ s'intéresse plus à la technique et ignore la conception?


Sujet :

C++

  1. #441
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    237
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations forums :
    Inscription : Juillet 2009
    Messages : 237
    Par défaut
    Citation Envoyé par fcharton Voir le message

    Du coup, avoir des outils moins puissants (techniquement) ne me parait pas une bonne approche... D'autant plus que je ne suis pas certain que les projets dans des langages ne gérant pas les ressources d'aussi près (disons Java et C# se passent globalement mieux).
    le but n'est pas d'avoir des outils moins puissant techniquement loin de la , mais le but est d'avoir des outils qui font abstraction le plus possible a toute la complexité technique.

  2. #442
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Par défaut
    Citation Envoyé par Issam_Lahlali Voir le message
    actuellement C++ est l'idéal pour toute application qui a besoin de mieux maitriser les ressources mémoires et processeurs et dans l'état actuel des choses je me voit mal choisir C++ pour une application de gestion.

    et je crains que dans un futur proche avec la démocratisation des multicore et des OS 64 bits ou la mémoire ne sera pas limiter qu'a 4 Go ,les boites ne choisiront plus C++ même s'ils ont besoin de mieux maîtriser les ressources.
    Je pense que tu as tort, on aura toujours besoin de maîtrise dans certains domaines, comme actuellement. Il n'y a pas que la quantité de mémoire qui peut jouer.

  3. #443
    Membre très actif
    Profil pro
    professeur des universités à la retraite
    Inscrit en
    Août 2008
    Messages
    364
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : professeur des universités à la retraite

    Informations forums :
    Inscription : Août 2008
    Messages : 364
    Par défaut
    Citation Envoyé par fcharton Voir le message
    Quand la mémoire était en Ko, on se disait que 640Ko, c'était énorme... Ensuite on s'est dit que 2Go, on n'en aurait jamais besoin... Pareil avec le stockage, pareil avec la cadence des processeurs, et leur puissance de calcul...

    Ce qui est assez mystérieux, quand on y pense, c'est que le facteur un million en puissance gagnée depuis les premiers ordis individuels ne se soit pas traduit dans les performances et la puissance des applis.
    Vous êtes d'accord avec ça ? Personnellement, j'ai connu l'époque des 640k et j'ai le sentiment (simple intuition) qu'il n'y a aucune commune mesure entre les performances et la puissance des applis de l'époque avec celles de maintenant...

  4. #444
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    237
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations forums :
    Inscription : Juillet 2009
    Messages : 237
    Par défaut
    Citation Envoyé par Matthieu Brucher Voir le message
    Je pense que tu as tort, on aura toujours besoin de maîtrise dans certains domaines, comme actuellement. Il n'y a pas que la quantité de mémoire qui peut jouer.
    Effectivement on aura toujours besoin pour certains domaines mais ma crainte et que ça sera de moins en moins.

    toute technologie passe par trois phases: évolution, stagnation et puis récession a cause de migration vers d'autres technos.

    actuellement C++ est en stagnation et le nombre de nouveaux projets développé en C++ décroit chaque année.

    et forcement il y aura toujours de nouveaux projets qui se développent en C++ mais de moins en moins et ça touche surtout les softs de type système,embarqué et jeux.


    et puis il y a un autre point en défaveur de c++, il s'agit de la convergence des applications web et desktop et voila le probléme:

    imaginant qu'on développe une application desktop avec c++ et que demain on veut la rendre aussi disponible en Web, alors si la conception est bien faite ou les couches sont bien isolées on peut dire que c'est facile, mais le probléme réside dans l'intégration entre langages , entre java et c++ c'est pas le paradis et entre dotnet et c++ il y le C++\cli mais reste spécifique a windows.

    le web devient parmi les endroits favoris de plusieurs types d'applications et faire le mélange entre différents langages pour y arriver rend la vie compliqué.

    et du moment ou on a moins de projets on aura automatiquement dans le futur moins de ressources puisqu'on privilégie la ou on est sur de trouver un job rapidement.

    a mon avis il y a plusieurs facteurs qui commence a limiter le choix de c++, et si la comité de standardisation n'accélère pas les évolutions au niveau langage et librairies standards pour faire plus abstraction aux problèmes techniques récurrents ça peut être trop tard.

    moi je suis pour une pétition ou des millions de développeurs C++ donne leur avis sur la lenteur de standardisation et la soumettre a la comité

    peut être j'ai tort parce que j'ignore complètement toutes les difficultés de standardisation mais ce qui est sur c'est qu'il faut quelque chose avant que ça soit trop tard.

  5. #445
    Expert éminent
    Avatar de koala01
    Homme Profil pro
    aucun
    Inscrit en
    Octobre 2004
    Messages
    11 644
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : Belgique

    Informations professionnelles :
    Activité : aucun

    Informations forums :
    Inscription : Octobre 2004
    Messages : 11 644
    Par défaut
    Je pense surtout que les échelles de valeurs ont énormément évolué...

    A l'époque, on considérait qu'une application nécessitant quatre disquettes (6Mb et une chique, un peu plus si c'était compressé) d'installation était énorme, alors que, maintenant, on considère comme tout à fait normal qu'une application nécessite plusieurs giga d'espace disque.

    A l'époque, on considérait normal de n'avoir que des application "texte" (ou proche de l'être) ou de ne disposer que de 255 couleurs alors que maintenant, on est presque perdu si l'on ne dispose pas d'un "cliquodrome" ou qu'on ne sais pas avoir un rendu correct des images à l'écran...

    A l'époque, on ne s'étonnait pas que l'imprimante fasse un bruit de mitrailleuse pendant 45 secondes pour sortir une seule page de texte, alors que, maintenant, on s'offusque dés qu'il faut plus de 6 secondes pour avoir une impression, en couleurs, avec une photo (bien rendue) dans le coin.

    Actuellement, il semble "normal" à tout le monde de discuter avec quelqu'un qui se trouve à l'autre bout de la terre, ou de regarder un film sur l'ordinateur, alors que personne n'aurait oser imaginer de le faire dans les années 80 (ou peu s'en faut)

    Mais ce qu'il fallait "découvrir" dans les années 80 est, à l'heure actuelle tellement documenté partout que c'est à la portée "du premier imbécile venu"

    En un mot, chaque époque a eu ses défis qui sont devenus, par la suite, le B-A-BA de l'époque suivante.

    Comme on demande de plus en plus à nos applications, elles deviennent de plus en plus complexes, et de plus en plus gourmandes en ressources (tous types confondus)

    On peut dire que c'est parce que le matériel devient de plus en plus performant que l'on ose actuellement envisager de faire des choses que l'on pensait impossibles il y a dix ans à peine.

    Mais d'un autre coté, si le matériel n'avait pas évolué comme il l'a fait, il y a bon nombre de défis que nous n'aurions jamais pu relever...
    A méditer: La solution la plus simple est toujours la moins compliquée
    Ce qui se conçoit bien s'énonce clairement, et les mots pour le dire vous viennent aisément. Nicolas Boileau
    Compiler Gcc sous windows avec MinGW
    Coder efficacement en C++ : dans les bacs le 17 février 2014
    mon tout nouveau blog

  6. #446
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Par défaut
    Citation Envoyé par Issam_Lahlali Voir le message
    et puis il y a un autre point en défaveur de c++, il s'agit de la convergence des applications web et desktop et voila le probléme:

    imaginant qu'on développe une application desktop avec c++ et que demain on veut la rendre aussi disponible en Web, alors si la conception est bien faite ou les couches sont bien isolées on peut dire que c'est facile, mais le probléme réside dans l'intégration entre langages , entre java et c++ c'est pas le paradis et entre dotnet et c++ il y le C++\cli mais reste spécifique a windows.

    le web devient parmi les endroits favoris de plusieurs types d'applications et faire le mélange entre différents langages pour y arriver rend la vie compliqué.
    Aucun problème pour le web ! C'est du pur client serveur, donc pas d'interaction inter-langage à la JNI à effectuer, ce sont des techniques utilisées couramment pour RoR, Django, ... Les navigateurs sont dans des langages très différents, et le toolkit le plus utilisé est en C++.

  7. #447
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    237
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations forums :
    Inscription : Juillet 2009
    Messages : 237
    Par défaut
    Citation Envoyé par Matthieu Brucher Voir le message
    Aucun problème pour le web ! C'est du pur client serveur, donc pas d'interaction inter-langage à la JNI à effectuer, ce sont des techniques utilisées couramment pour RoR, Django, ... Les navigateurs sont dans des langages très différents, et le toolkit le plus utilisé est en C++.
    la majorité des applis web ne sont pas fait avec RoR , il y a du java , du php et autres et a un moment donnée il faut les communiquer avec C++ si notre métier est en c++, et la on a besoin du marshaling et intégration entre les langages.

    et en parlant de client/serveur et du distribué, j'ai travailler pendant des années dans ce domaine en utilisant plusieurs framework de Corba et aussi DCOM et Com+ et aussi les webservices et sincèrement c++ n'est pas l'idéal pour ça.

    on revient au fait que les types de projet qui se développe actuellement a C++ décroit de plus en plus.

    et il y a une différence entre :on peut faire tout en C++ et laquelle des technologies est la plus adapté pour un besoin donné ou on prend en compte plusieurs facteurs:

    - facilité d'implémentation.
    - disponibilité de ressources.
    - techno évolutif ou pas

    peut être je vois la difficulté d'implémentation en c++ la ou tout est facile parce que j'ai un niveau moyen mais j'ai l'impression que beaucoup ont le même souci.

  8. #448
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Par défaut
    Tu crois que faire communiquer php et Java, c'est plus simple ?? Il y aura toujours le problème de l'interaction entre les langages, C++ n'est donc pas moins ou plus avantagé dans le tas.

  9. #449
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    237
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations forums :
    Inscription : Juillet 2009
    Messages : 237
    Par défaut
    Citation Envoyé par Matthieu Brucher Voir le message
    Tu crois que faire communiquer php et Java, c'est plus simple ?? Il y aura toujours le problème de l'interaction entre les langages, C++ n'est donc pas moins ou plus avantagé dans le tas.
    effecivement c'est plus compliqué d'ailleurs , mais je parlais des difficultés qui limite le choix de c++ par rapport a d'autres langages ou on peut tout faire desktop et web comme java et dotnet.

    par exemple imaginant que je suis décideur et j'aimerais faire des applications a la fois web et desktop et en commun il y a quelque modules , alors j'aurais tendance a choisir la même techno pour rester homogène.

    c'est pas un point faible que c++ ne traite pas le web mais ça limite les nouveaux projets développés avec c++ vu la convergence de plus en plus entre web et desktop.

    donc finalement je veux juste dire que le choix de c++ pour les nouveaux projets commence a diminuer et c'est pas bien pour une techno, parce que si cette tendance continue on aura une pénurie de ressources(un developpeur choisit la techno ou il y a plus de boulot) et du coup la techno va entrer dans une récession juste parce que il n y a pas assez de ressources.

  10. #450
    Rédacteur/Modérateur
    Avatar de JolyLoic
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    5 463
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2004
    Messages : 5 463
    Par défaut
    Citation Envoyé par fcharton Voir le message
    Ce qui est assez mystérieux, quand on y pense, c'est que le facteur un million en puissance gagnée depuis les premiers ordis individuels ne se soit pas traduit dans les performances et la puissance des applis.
    Je pense qu'il s'est traduit. Outre les exemples déjà cité, il s'est aussi traduit dans les "performances" au design time des applis. Ce qu'on développe aujourd'hui en quelques clicks et 5 minutes, et de manière robuste, il fallait des mois pour le faire dans les années 80.

    Le coût de développement entre dans les critères de qualité d'une appli, et un développeur qui mettrait 20% de temps en plus pour développer une application qui tournerait 2 fois plus vite, je n'en voudrais pas dans beaucoup de domaines d'application.

    Tout ça est permi par l'abstraction, qui a un coût, mais que je suis bien content de payer en général.
    Ma session aux Microsoft TechDays 2013 : Développer en natif avec C++11.
    Celle des Microsoft TechDays 2014 : Bonnes pratiques pour apprivoiser le C++11 avec Visual C++
    Et celle des Microsoft TechDays 2015 : Visual C++ 2015 : voyage à la découverte d'un nouveau monde
    Je donne des formations au C++ en entreprise, n'hésitez pas à me contacter.

  11. #451
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par ptyxs Voir le message
    Vous êtes d'accord avec ça ? Personnellement, j'ai connu l'époque des 640k et j'ai le sentiment (simple intuition) qu'il n'y a aucune commune mesure entre les performances et la puissance des applis de l'époque avec celles de maintenant...
    Si tu présentes les choses comme ça, on va tous être d'accord avec toi... Maintenant, tu peux te poser le problème différemment... Entre les 4 Mo de mémoire, les 80 Mo sur le disque, les 4 ou 8Mhz, du PC d'il y a une quinzaine d'années (et je ne parle même pas de la préhistoire, des ZX81 et des TRS80...), il y a, en gros, un facteur mille.

    C'est énorme, un facteur mille, en vitesse c'est plus que la différence entre un piéton et un avion de chasse, en capacité, c'est la différence entre la région parisienne, et une ville comme Mende (Lozère). Dans l'histoire de l'humanité, des "facteurs mille", il n'y en a pas eu beaucoup, alors en 15 ans...

    Ma question est alors la suivante : retrouve t'on ces facteurs mille dans la puissance de nos applications... Les exemples données par Koala sont intéressants, ils parlent de facteur 10, 100 peut être...

    Où sont les 10 qui manquent, alors?

    Francois

  12. #452
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par JolyLoic Voir le message
    Je pense qu'il s'est traduit. Outre les exemples déjà cité, il s'est aussi traduit dans les "performances" au design time des applis. Ce qu'on développe aujourd'hui en quelques clicks et 5 minutes, et de manière robuste, il fallait des mois pour le faire dans les années 80.
    J'avoue que je suis un peu perplexe, là dessus... Pour être passé, sur la période, de la position d'acheteur de programmes informatiques à celle de développeur, j'ai l'impression que le cout de développement n'a pas baissé en proportion (et je ne pense pas que les développeurs de base soient mieux payés aujourd'hui qu'il y a 15 ans).

    Dans le domaine professionnel, j'aurais même tendance à dire que les prix ont explosé ces dernières années. Regarde ce que tu fais de nos jours avec un budget developpement (prestation extérieure) de 15K€ (pour les vieux, ca fait 100 KF)...

    Pour l'informatique grand public, il suffit de voir les dates de sorties des versions (plus le fait qu'une version sur deux est en fait une béta).

    Alors, bien sur, l'informatique a permis l'apparition de produits de série. En cinq clics, je peux monter un blog, tache de malade il y a 10 ans. En 20 clics, je peux même monter un forum comme celui ci... Mais là, j'ai l'impression qu'on est davantage dans les "retombées" que dans l'informatique proprement dite...

    Francois

  13. #453
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    237
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations forums :
    Inscription : Juillet 2009
    Messages : 237
    Par défaut
    Pour cette affaire de performances il y a la question suivante qui se pose :

    Pour quelle raison autre que la maitrise fine des ressources je choisirais C++?

    parce que si maintenant le choix de C++ pour les nouveaux projets et surtout une question de maitrise de ressources il faut sérieusement se poser la question de l'avenir de C++ est de la manière de le simplifier plus.

    d'une part beaucoup choisissent C pour ce type de contrainte et d'autre part
    on ne sait pas ce que nous réserve l'avenir coté matériel , peut etre aprés 5 ans avec les multicore il y aura des cores hybrides ou un des processeurs connait nativement cli et l'autre le bytecode, et le switch entre core dependera de ce qu'il faut exécuter.


    peut être je délire mais il ne faut jamais sous estimer les avancés technologiques et dire que C++ est top comme il est maintenant et il ne faut rien y toucher parcequ'il aura toujours un domaine d'application propre a lui qui est la bonne gestion des ressources n'est pas un bon argument.

  14. #454
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Par défaut
    Citation Envoyé par Issam_Lahlali Voir le message
    c'est pas un point faible que c++ ne traite pas le web mais ça limite les nouveaux projets développés avec c++ vu la convergence de plus en plus entre web et desktop.
    Complètement faux. Je ne vois pas du tout ce qui empêche du côté serveur d'utiliser C++ pour envoyer les infos au client léger, comme je te l'ai déjà dit, on fait ça dans tous les langages, et C++ ne déroge pas à la règle. Par exemple Qt propose ce qui est nécessaire pour cela.

  15. #455
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Par défaut
    Citation Envoyé par Issam_Lahlali Voir le message
    Pour quelle raison autre que la maitrise fine des ressources je choisirais C++?
    - Les performances !
    - La maintenabilité du code (avec les templates, j'ai écrit un code parallèle de propagation des ondes 3D avec n'importe quel schéma usuel, ou presque)
    - Les frameworks existants
    Rien que ces 4 points font que je préfère le C++ aux autres langages.

  16. #456
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    237
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations forums :
    Inscription : Juillet 2009
    Messages : 237
    Par défaut
    Citation Envoyé par Matthieu Brucher Voir le message
    - Les performances !
    ça entre dans le cas de maitrise fine des ressources.

    Citation Envoyé par Matthieu Brucher Voir le message
    - La maintenabilité du code (avec les templates, j'ai écrit un code parallèle de propagation des ondes 3D avec n'importe quel schéma usuel, ou presque)
    ça se discute , la liberté de c++ fait qu'on a un code varié dans un projet et sincèrement il faut des développeurs plus que moyen pour faire un code maintenable en C++

    et la ou je suis d'accord avec toi est si on exploite le meilleure de C++ on peut faire des choses extraordinaires en dev et en maintenance , il faut juste rester dans la simplicité, et je ne sais pas pourquoi j'ai l'impression que C++ comme il est actuellement encourage plus que d'autres langages a avoir un code très compliqué a comprendre.

    Citation Envoyé par Matthieu Brucher Voir le message
    - Les frameworks existants
    t'a tout a fait raison mais je ne vois pas ce qui manque dans les librairies d'autres langages et que ça existe qu'en c++.

  17. #457
    Membre très actif Avatar de metagoto
    Profil pro
    Hobbyist programmateur
    Inscrit en
    Juin 2009
    Messages
    646
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Hobbyist programmateur

    Informations forums :
    Inscription : Juin 2009
    Messages : 646
    Par défaut
    Que C++ se fasse piquer des parts de marché par php, ruby, python.. ça ne me choque pas ni ne m'effraie. D'un coté on a un langage compilé à typage statique et de l'autre des langages dynamiques. La grande force du C fut d'arriver à produire du code machine aussi compacte et efficace que de l'assembleur à une époque où on n'avait pas le choix pour des raisons qui ont été évoquées précédemment. De nos jours, l'évolution technologique fait que ruby ou python suffisent largement pour tout un pan d'applications. On n'a plus les mêmes contraintes qu'avant. Je m'en réjouis.

    En revanche ce qui me choque un peu plus c'est que toutes les implémentations majeures de ces "nouveaux" langages le sont en C et non en C++. Quelque part je trouve que c'est là qu'on mesure un certain échec du C++.

  18. #458
    Expert éminent
    Avatar de koala01
    Homme Profil pro
    aucun
    Inscrit en
    Octobre 2004
    Messages
    11 644
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : Belgique

    Informations professionnelles :
    Activité : aucun

    Informations forums :
    Inscription : Octobre 2004
    Messages : 11 644
    Par défaut
    Citation Envoyé par Issam_Lahlali Voir le message
    et la ou je suis d'accord avec toi est si on exploite le meilleure de C++ on peut faire des choses extraordinaires en dev et en maintenance , il faut juste rester dans la simplicité, et je ne sais pas pourquoi j'ai l'impression que C++ comme il est actuellement encourage plus que d'autres langages a avoir un code très compliqué a comprendre.
    Je ne crois pas que la puissance en développement et la facilité de maintenance soient tout à fait incompatibles avec la simplicité...

    Par exemple, une fois que l'on a découvert les fonctions qui agissent sur des écarts, et qui ne sont malgré tout pas *si* compliquées que cela à comprendre, tu peux obtenir un code à la fois facilement lisible, compréhensible, efficace et facile à maintenir...

    L'utilisation de for_each en est sans doute l'exemple le plus frappant

    Après tout, un code proche de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    for_each(truc.begin(),truc.end(),foncteur());
    est clairement explicite:
    pour chaque objet qui se trouve entre truc.begin(), et truc.en(), on appelle foncteur
    et n'est finalement pas plus compliquée à comprendre que
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    for(iterator it=truc.begin(); it!=truc.end();++it)
        (*it).fonction();
    Et c'est encore plus explicite si ton foncteur a un nom correctement choisi

    Et la maintenance est limitée au minimum: Il suffit modifie l'opérateur () du foncteur pour que la modification soit prise en compte partout

    Et, bien sur, j'ai pris l'exemple de for_each, mais j'aurais pu prendre n'importe quelle autre fonction définie dans <algorithm>
    A méditer: La solution la plus simple est toujours la moins compliquée
    Ce qui se conçoit bien s'énonce clairement, et les mots pour le dire vous viennent aisément. Nicolas Boileau
    Compiler Gcc sous windows avec MinGW
    Coder efficacement en C++ : dans les bacs le 17 février 2014
    mon tout nouveau blog

  19. #459
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 20
    Par défaut
    j'ai fait du C++ il y a un certain temps et pour moi la perte de vitesse du C++ par rapport à d'autre langages se trouve (selon moi ) dans l'absence limites du C++.

    je veux dire par là que le C++ n'a pas un usage défini il partage en gros le même marcher que le C alors que c'est pas vraiment sa place ...

    un java ou C# sont très orientés et leurs limites bien définies, on sait a quoi ces langages servent. d'ailleurs java et C# sont cantonnés dans des secteurs bien précis, contrairement au C++

  20. #460
    Expert confirmé

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 756
    Billets dans le blog
    3
    Par défaut
    La chute de C++, c'est avant tout la chute des MFC. Microsoft a lâché le C++ au profit de C#, ça a fait bien plus de mal que les retards de l'ISO. Plein de monde frustré des MFC s'est réfugié dans .net, et voilà. Mais bon, on tend doucement vers un nouvel équilibre il me semble.

    Y'a de moins en moins de projets en C++... c'est surement vrai, mais je pense aussi qu'il est plus exact de dire qu'il y a de moins en moins de projets uniquement en C++ (ce qui implique forcément un besoin moins élevés en développeurs C++). Mais quelque part... j'ai l'impression que le milieu voit une sorte "d'épuration" : les développeurs les moins doués (quel que soit le langage) s'empressent de délaisser C++, et on arrive au même problème avec les autres langages qu'on a en C++ qui est celui de recruter de bon programmeurs. Tous les étudiants apprennent Java par exemple, ça plus autre chose fait que le marché regorge de développeurs Java plus ou moins bidons. Conséquence : il y a des boîtes qui peinent à trouver de bons programmeurs Java. En C++ c'est dur d'avoir de bons CV, en Java c'est dur de les identifier au milieu de tout ce qui existe.

    En ce moment je recherche du taff, et à ma grande surprise, mon profil C++ a très rapidement intéressé beaucoup de monde malgré la crise et les offres majoritairement Java/.Net. Au delà de ce qui est visible, il y a encore beaucoup de monde qui recherche des développeurs C++ (avec 2/3 ans expérience). Et y'a pas mal d'offres très intéressantes (d'un point de vue... technique ah ah !).

    A côté de ça, les offres Java c'est très souvent la même chose. Bon en même temps je m'y intéresse pas des masses alors je suis mal placé pour en parler, mais j'ai quand même l'impression que si t'es spécialisé Java, soit tu fais des sites web, soit tu vas faire des applis de gestion... et pour moi c'est ch*** comme la pluie (6 mois ça va mais pas plus). Le C++ est encore très en vogue dans le monde de l'industrie il me semble, et en ce qui me concerne, je trouve que ce sont des projets nettement plus intéressants. C'est simplement une affaire de goûts. Faire une appli de gestion, que ce soit en C++ ou en C#, perso ça me fait pas rêver. Alors honnêtement je m'en fiche un peu si ce secteur délaisse C++.

    Issam, j'ai l'impression que tu acceptes difficilement le déclin de C++ dans certains domaines. Mais je crois qu'il ne faut pas généraliser à tous les domaines. Et en ce qui me concerne, les domaines en question ne sont pas ce qui se fait de plus intéressant, et c'est là où C++ se montrait le plus pénible / moins productif, alors ça ne me gêne pas trop. Le C++ est très orienté technique c'est vrai, mais il y a quand même pas mal de domaines qui sont par nature très techniques, et pour ceux là, je crois que C++ va rester compétitif encore quelques années.

Discussions similaires

  1. Pourquoi mon image ne s'affiche plus
    Par Gouyon dans le forum 2D
    Réponses: 5
    Dernier message: 18/03/2011, 14h51
  2. Réponses: 6
    Dernier message: 27/12/2010, 16h40
  3. Réponses: 10
    Dernier message: 22/12/2009, 20h58
  4. Réponses: 6
    Dernier message: 26/06/2006, 16h52
  5. Pourquoi n'y a-t-il plus de "délestage" massif sur le forum ?
    Par Eusebius dans le forum Mode d'emploi & aide aux nouveaux
    Réponses: 7
    Dernier message: 26/05/2006, 00h16

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