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. #21
    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 : 49

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Juin 2009
    Messages : 1 909
    Par défaut
    Citation Envoyé par Issam_Lahlali Voir le message

    mais ce problème de non homogénéité m'a toujours gêner ça impose aux développeurs c++ de passer du temps a apprendre d'autre librairies.
    t'inquiète avec 5 nouveaux frameworks par mois les développeur java aussi passent leur temps a apprendre a utiliser de nouvelles librairies (je sais ce n'ai pas 5 j'exagère encore)

  2. #22
    Alp
    Alp est déconnecté
    Expert confirmé

    Avatar de Alp
    Homme Profil pro
    Inscrit en
    Juin 2005
    Messages
    8 575
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2005
    Messages : 8 575
    Par défaut
    Citation Envoyé par Issam_Lahlali Voir le message
    Ça fait 10 ans que je fais du c++ et je sais qu'un débutant en C# va terminer avant moi une interface graphique en c# si moi je la code en c++

    le problème c'est qu'on a tolérer trop la complexité des frameworks techniques de C++ et pire a chaque fois on leur trouve des explications.
    Utilise Qt via Qt Creator (IDE écrit par la boîte qui fait Qt) ou le plugin Visual C++, tu verras. Je pense créer des IHM plus vite que les débutants C# et aussi vite que les expérimentés de C# (étant assez familier avec Qt). De plus, Qt tourne très bien sous Linux, Mac, Windows et de plus en plus de smartphones.

    C'est sympa, pratique et très portable, sans mettre de côté l'intuitivité une fois que tu as compris comment cela fonctionne.

    Par contre, je suis d'accord pour dire que le fait que beaucoup de choses ne soient pas comprises dans la bibliothèque standard n'aide pas le C++ à être adopté en entreprise. C'est l'une des choses qui le fait paraître pour un langage "élitiste" ou je ne sais quoi.

  3. #23
    Membre Expert
    Avatar de white_tentacle
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    1 505
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 1 505
    Par défaut
    UML peut éventuellement [1] pousser à utiliser un paradigme mais est bien neutre en terme de langage.
    Le modèle UML pourra être implémenter dans tout langage supportant nativement ce paradigme ou offrant des mécanisme pour l'émuler.
    Certes, certains aspects intéressant du C++ ne seront pas utiliser/modéliser mais le modèle pourra bien être implémenter en C++ et dans nombre d'autres langages, en ce sens UML est bien neutre en terme de langage.
    Je crois que ce qu'il voulait dire, c'est qu'UML ne permet pas de modéliser certains aspects qui sont possibles en c++. Donc, UML est certe neutre en terme de langage, mais finalement, il te bride dans certains langages.

    La conséquence, c'est que si tu modélises en uml, tu te retrouveras à choisir java ou csharp comme langage, parce que tu n'auras jamais besoin de fonctionnalités qui n'y sont pas (elles ne sont pas non plus dans uml). Du coup, ce n'est plus vraiment neutre.

  4. #24
    Membre Expert
    Avatar de Pragmateek
    Homme Profil pro
    Formateur expert .Net/C#
    Inscrit en
    Mars 2006
    Messages
    2 635
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Formateur expert .Net/C#
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 635
    Par défaut
    Citation Envoyé par JolyLoic Voir le message
    Pour l'aspect UML/conception, je trouve pour avoir essayé à plusieurs reprises qu'UML, bien que se voulant neutre en terme de langage d'implémentation, ne l'est pas tant que ça, et impose un paradigme là où le C++ en propose plusieurs, et j'ai toujours eu du mal à exprimer ainsi des points qui me semblent fondamentaux d'une conception C++ en UML. Peut-être que c'est aussi ce qui freine les outils de conception orienté C++.
    A priori UML permet de modéliser selon tous les paradigmes de programmation (et même plus généralement de développement) notamment via l'utilisation des stétéotypes et des "profiles".

    Aurais-tu des exemples de conception où le mapping UML/C++ n'est pas bijectif ?

  5. #25
    Rédacteur

    Avatar de Davidbrcz
    Homme Profil pro
    Ing Supaéro - Doctorant ONERA
    Inscrit en
    Juin 2006
    Messages
    2 307
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ing Supaéro - Doctorant ONERA

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 307
    Par défaut
    Aurais-tu des exemples de conception où le mapping UML/C++ n'est pas bijectif ?
    Rien que les classes imbriquées
    "Never use brute force in fighting an exponential." (Andrei Alexandrescu)

    Mes articles dont Conseils divers sur le C++
    Une très bonne doc sur le C++ (en) Why linux is better (fr)

  6. #26
    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 : 50
    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
    Je ne suis pas pro d'UML, mais ces stéréotypes ne m'ont jamais semblé qu'une rustine, qui permet d'indiquer des choses, certes, mais pas vraiment de les visualiser, de communiquer dessus. Peut-être que je me trompe ?

    Comment indiquer qu'un template demande des objets copiables et triables ?
    Comment indiquer les fonctions libres associées à une ou plusieurs classe ?
    Comment indiquer que la relation entre deux objets est une possession partagée (shared_ptr, ou autre), une non possession (weak_ptr, T*, ou autre), une possession unique (unique_ptr, ou composition, ou autre) ?
    Comment indiquer qu'un template est spécialisé pour un type, une famille de types ?
    Comment indiqué que dans une classe, une série de fonction peut être appelée depuis plusieurs threads en même temps ?
    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.

  7. #27
    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
    faire une bonne conception ne veux pas dire forcement adopter UML, certes c'est un langage puissant pour représenter la conception et la documenter et aussi ça permet une bonne communication au sein de l'equipe mais il ya des règles de bases de conceptions qui peuvent nous faire gagner beaucoup de temps.

    Prenons par exemples les patterns GRASP et intéressant nous juste aux deux principes: Couplage faible et Cohesion forte.

    Malheureusement on se rend compte des dégâts du couplage fort que lorsqu'on veut faire une migration ou une évolution majeur.

    et on oublient que le couplage fort a un impact général sur toute l'entreprise, prenons un exemple concret sur lequel j'ai bosser, notre projet se basait sur Corba or il n y avait pas de couplage faible et du coup la complexité corba se trouvait a tout les niveaux du projet, et la conséquence c'est que les ressources humaines avait du mal a chercher les développeurs vu qu'ils doivent maitriser Corba.

    des fois on oublient qu'un problème de conception impacte tout les acteurs de l'entreprise.

  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 : 49

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Juin 2009
    Messages : 1 909
    Par défaut
    Citation Envoyé par Issam_Lahlali Voir le message
    faire une bonne conception ne veux pas dire forcement adopter UML, certes c'est un langage puissant pour représenter la conception et la documenter et aussi ça permet une bonne communication au sein de l'equipe mais il ya des règles de bases de conceptions qui peuvent nous faire gagner beaucoup de temps.

    Prenons par exemples les patterns GRASP et intéressant nous juste aux deux principes: Couplage faible et Cohesion forte.
    non uml n'est pas la seul démarche de conception viable, il en existe tout un tas plus ou moins adapté en fonction de tes besoins.


    Malheureusement on se rend compte des dégâts du couplage fort que lorsqu'on veut faire une migration ou une évolution majeur.

    et on oublient que le couplage fort a un impact général sur toute l'entreprise, prenons un exemple concret sur lequel j'ai bosser, notre projet se basait sur Corba or il n y avait pas de couplage faible et du coup la complexité corba se trouvait a tout les niveaux du projet, et la conséquence c'est que les ressources humaines avait du mal a chercher les développeurs vu qu'ils doivent maitriser Corba.

    des fois on oublient qu'un problème de conception impacte tout les acteurs de l'entreprise.
    la conception et les choix qui y sont fait sont cruciaux quelque soit le soft que tu developpe.

    cela aura un impact fort sur les performances de ton application, sa scalabilité, maintenabilité de l'architecture, ...
    C'est pour cela qu'il ne faut jamais faire l'impasse dessus.


    j'ai l'impression que ton projet te déprime? je me trompe?

  9. #29
    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 jabbounet Voir le message
    j'ai l'impression que ton projet te déprime? je me trompe?
    Pas du tout , les exemples que je cite font partit de mes expériences que j'aime partager pour que d'autres les evitent.

    par contre ce qui me déprime c'est le grand intérêt de la communauté c++ a tout ce qui est technique.

    dans les années 90 c'etait comprehensible vu qu'il nyavait pas de resources techniques sur le web et le risque majeur c'etait la technique.

    Mais de nos jours on trouve tout ce qu'il faut pour resoudre les problémes techniques mais malheureusement les attitudes n'ont pas changer , on s'interessent toujours plus aux astuces techniques.

    Encore une fois c'est pas la faute au langage mais a a la communauté qui contribue a laisser la technique le roi de C++

  10. #30
    Membre Expert
    Avatar de Pragmateek
    Homme Profil pro
    Formateur expert .Net/C#
    Inscrit en
    Mars 2006
    Messages
    2 635
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Formateur expert .Net/C#
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 635
    Par défaut
    Rien que les classes imbriquées
    Une agrégation forte stéréotypée "inner" peut faire l'affaire.

    Comment indiqué que dans une classe, une série de fonction peut être appelée depuis plusieurs threads en même temps ?
    En stéréotypant les méthodes par exemple.

    Comment indiquer qu'un template demande des objets copiables et triables ?
    Il est possible de définir des contraintes personnalisées utilisées dans des expressions OCL.

    ...

    Concernant les templates, s'ils induisent un paradigme vraiment spécifique et riche il est possible de définir un "Template profile".


    UML a été conçu pour être extensible et doit donc permettre d'exprimer toute conception; cela se faisant plus ou moins simplement : dans les cas basiques via les stéréotypes qui permettent de changer la sémantique des éléments de base du langage, et dans les cas plus riches via la définition d'un nouvel ensemble d'éléments qui vont permettre de modéliser de manière standardisé des conceptions dans des domaines spécifiques : il existe par exemple un profile pour les tests, l'UML Testing Profile.

  11. #31
    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 : 50
    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 seriousme Voir le message
    Concernant les templates, s'ils induisent un paradigme vraiment spécifique et riche il est possible de définir un "Template profile".


    UML a été conçu pour être extensible et doit donc permettre d'exprimer toute conception; cela se faisant plus ou moins simplement : dans les cas basiques via les stéréotypes qui permettent de changer la sémantique des éléments de base du langage, et dans les cas plus riches via la définition d'un nouvel ensemble d'éléments qui vont permettre de modéliser de manière standardisé des conceptions dans des domaines spécifiques : il existe par exemple un profile pour les tests, l'UML Testing Profile.
    Un tel outil de représentation n'a d'intérêt que :
    - Si la représentation est claire, parlante
    - La représentation est partagée entre les utilisateurs de l'outil
    - Les outils logicielles l'intègrent bien

    J'ai des doutes sur les trois points si je dois définir moi même une extension au langage UML pour les template.
    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.

  12. #32
    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 seriousme Voir le message
    UML a été conçu pour être extensible et doit donc permettre d'exprimer toute conception
    Partant du principe qu'avec UML on peut tout représenter, mais a mon avis il faut différencier conception et UML , on peut faire une conception médiocre avec UML comme on peut faire une conception géniale sans UML.

    UML est un moyen pour documenter et facilite la communication mais ca ne veut pas dire qu'on a fait une bonne conception, et meme l'absence d'outil puissant pour synchroniser le code et les diagramme UML font qu'en general on a des diagrammes UML obsoletes.

    ca parait évident comme remarque mais de plus en plus de développeurs surtout ceux qui sortent de l'école croient qu'ils font de la conception s'ils utilisent UML et même pire étant étudier un cours de conception dans une université en france on a fait que l'UML c'est comme si tu veux étudier la philosophie et on t'enseigne le français

  13. #33
    Membre Expert
    Avatar de Pragmateek
    Homme Profil pro
    Formateur expert .Net/C#
    Inscrit en
    Mars 2006
    Messages
    2 635
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Formateur expert .Net/C#
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 635
    Par défaut
    Citation Envoyé par Issam_Lahlali Voir le message
    Partant du principe qu'avec UML on peut tout représenter, mais a mon avis il faut différencier conception et UML , on peut faire une conception médiocre avec UML comme on peut faire une conception géniale sans UML.
    Tout à fait, UML n'est qu'un langage, même pas une méthodologie.

    Citation Envoyé par Issam_Lahlali Voir le message
    UML est un moyen pour documenter et facilite la communication mais ca ne veut pas dire qu'on a fait une bonne conception, et meme l'absence d'outil puissant pour synchroniser le code et les diagramme UML font qu'en general on a des diagrammes UML obsoletes.
    Il existe des outils de synchronisation automatiques, mais pour être réellement pertinente il faut que leur utilisation s'inscrive dans une démarche plus profonde de MDE.

    Citation Envoyé par Issam_Lahlali Voir le message
    ca parait évident comme remarque mais de plus en plus de développeurs surtout ceux qui sortent de l'école croient qu'ils font de la conception s'ils utilisent UML et même pire étant étudier un cours de conception dans une université en france on a fait que l'UML c'est comme si tu veux étudier la philosophie et on t'enseigne le français
    Ce problème d'enseignement est malheureusement à généraliser à toutes les sciences informatiques, en particuliers la programmation.

  14. #34
    Rédacteur

    Avatar de Davidbrcz
    Homme Profil pro
    Ing Supaéro - Doctorant ONERA
    Inscrit en
    Juin 2006
    Messages
    2 307
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ing Supaéro - Doctorant ONERA

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 307
    Par défaut
    Il existe des outils de synchronisation automatiques, mais pour être réellement pertinente il faut que leur utilisation s'inscrive dans une démarche plus profonde de MDE.
    Oui, la grande question est quand ce qu'ils lachent ?

    Car comparé au Java/C# (les autres principaux langages du moment) le C++ est quand même beaucoup plus complexe, riche et puissant (pas de troll).

    Si le code est "simple" (utilisations basiques des classes, ...), les outils peuvent encore faire des diagrammes pas trop mauvais (même plutôt bons), mais dès que tu pars sur des trucs bizares à coup de template dans tes classes, les outils ne suivent plus (ou alors pas ceux que j'ai utilisés). Ils ne sont plus capables de faire des diagrammes corrects, il faut éditer le diagramme à la main après et perso, j'ai autre chose à faire .

    Un autre gros problème, c'est pour représenter les différents paradigme que peut utiliser le C++ dans un même programme, UML est "limité" à de l'objet.
    "Never use brute force in fighting an exponential." (Andrei Alexandrescu)

    Mes articles dont Conseils divers sur le C++
    Une très bonne doc sur le C++ (en) Why linux is better (fr)

  15. #35
    Membre Expert
    Avatar de Pragmateek
    Homme Profil pro
    Formateur expert .Net/C#
    Inscrit en
    Mars 2006
    Messages
    2 635
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Formateur expert .Net/C#
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 635
    Par défaut
    Car comparé au Java/C# (les autres principaux langages du moment) le C++ est quand même beaucoup plus complexe, riche et puissant (pas de troll).
    Ce n'est pas un troll mais un fait : en tant que langage C++ est le plus riche des trois : rien que la possibilité de faire de la méta-programmation le place en terme de possibilités de programmation loin devant Java ou C#.
    De même de la possibilité de faire de l'héritage multiple, même si cela est plus commun dans les langages dynamiques comme Python.

    Il semble que parmi ces trois langages C++ soit le seul à ne pas avoir cédé aux dogmes du type "l'héritage multiple est à proscrire".
    Ce dernier posant de gros problèmes de conceptions quand il s'agit d'implémenter des patterns simples comme l'observateur.

    Pour en revenir à la question initiale le C++ permet d'établir des conceptions plus riches, impossibles à mettre en oeuvre dans d'autres langages; le problème est alors le nivellement par le bas, au plus grand dénominateur commun, poussant à ignorer ces possibilités afin d'assurer la cohérence avec les autres développement en Java ou C#.

  16. #36
    Membre éprouvé
    Avatar de ymoreau
    Homme Profil pro
    Ingénieur étude et développement
    Inscrit en
    Septembre 2005
    Messages
    1 154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur étude et développement
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 154
    Par défaut
    Citation Envoyé par Issam_Lahlali Voir le message
    Mais de nos jours on trouve tout ce qu'il faut pour resoudre les problémes techniques mais malheureusement les attitudes n'ont pas changer , on s'interessent toujours plus aux astuces techniques.

    Encore une fois c'est pas la faute au langage mais a a la communauté qui contribue a laisser la technique le roi de C++
    Peut être que tous ces débats techniques viennent de débutants qui ne maitrisent pas totalement le langage, et que lorsqu'ils s'intéressent à la conception ils se renseignent ailleurs ?
    Pour moi la conception est quand même très indépendante du technique, et les débats à propos de conception sont peut être faits au sein des équipes en entreprise et pas sur internet, contrairement à tous ceux qui font du "C++ à la maison" qui ont souvent des questions à poser.

  17. #37
    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 YoniBlond Voir le message
    Pour moi la conception est quand même très indépendante du technique,
    Effectivement et même dans un monde idéal elle doit être indépendante du langage ou de la technologie utilisé c'est l'approche MDA.

    mais dans le monde réel la conception dépend beaucoup du langage vu que chaque langage a des mécanismes différents, par exemple la possibilité de l'héritage multiple et des mots clés comme friend en c++ influencent sur la conception.

    mais il faut toujours se poser la question: est ce logique qu'après plus de 20 ans d'existence de C++ on bataille avec les fuites mémoires,le fameux 0xC0000005 et d'autres soucis techniques.

    parmi les principes de la POO est de faire l'abstraction a tout ce qui est compliqué, d'autres langages ont déjà passé a l'orienté aspect pour que le code ne contient que le métier.

  18. #38
    Membre Expert
    Avatar de Goten
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 580
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 580
    Par défaut
    Tu parles de fuite de mémoire, on en revient donc bien à la technique. Or si on utilise les bons outils ainsi que les idiomes à notre disposition alors ce n'est plus un soucis. (cf les smart_ptr et le RAII). On peut donc se concentrer sur la conception.

  19. #39
    Membre éprouvé
    Avatar de ymoreau
    Homme Profil pro
    Ingénieur étude et développement
    Inscrit en
    Septembre 2005
    Messages
    1 154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur étude et développement
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 154
    Par défaut
    C'est sûr que le C++ n'a pas la même facilité que les autres langages, MAIS je ne vois toujours pas en quoi ça prouve que le C++ se passe de conception. Peut être qu'il faudra passer un peu de temps sur quelques bugs, mais ça n'empêche pas d'avoir fait la même conception à la base que pour un autre langage non ?

    En fait je ne comprends pas trop le but de ton post, si le C++ ne correspond pas au niveau d'abstraction que tu souhaites, il suffit de changer de langage. Car au final chaque langage ou outil sera meilleur qu'un autre pour un certain cas de figure.

  20. #40
    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
    juste pour donner un exemple concret d'un des principes de conception ou on parle moins dans la communauté C++ et c'est devenu a la mode pour la communauté java et C#, il s'agit du principe des contrats qui est representé par des interfaces pour ces deux derniers et par une classe abstraite pur pour C++.

    les interfaces jouent un rôle important lors du découplage et ça permet d'isoler des fonctionnalités dans des composants, le développement et la maintenance se simplifient.

    C'est tout a fait possible en C++ mais on trouve moins cette culture pour les développeurs C++ par contre juste des articles pour débutants en C# ou java parle de l'intérêt de ça.

Discussions similaires

  1. Pourquoi mon image ne s'affiche plus
    Par Gouyon dans le forum 2D
    Réponses: 5
    Dernier message: 18/03/2011, 13h51
  2. Réponses: 6
    Dernier message: 27/12/2010, 15h40
  3. Réponses: 10
    Dernier message: 22/12/2009, 19h58
  4. Réponses: 6
    Dernier message: 26/06/2006, 15h52
  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: 25/05/2006, 23h16

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