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 :

[Débat] C++ vs Java


Sujet :

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

  1. #1201
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    259
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 259
    Points : 607
    Points
    607
    Par défaut
    Non la mémoire virtuelle ne correspond pas nécéssairement a un espace existant dur le disque ou ailleurs.
    Les applications peuvent réserver une zone de mémoire virtuelle, qui sera utilisée si besoin est et qui ne le sera pas dans la majorité des cas.
    D'ailleurs suffit de regarder la mémoire virtuelle des processus sous linux on voit que la JVM peut facilement prendre plus de 200 Mo alors qu'elle n'en occupe que 15, tu lance l'applications 50 fois, ba ca veut pas dire que tu as 10 Go de disque qui est occupé

  2. #1202
    Expert éminent sénior

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    10 603
    Détails du profil
    Informations personnelles :
    Âge : 66
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 603
    Points : 17 913
    Points
    17 913
    Billets dans le blog
    2
    Par défaut
    le swap, ça te dit rien ?
    "Un homme sage ne croit que la moitié de ce qu’il lit. Plus sage encore, il sait laquelle".

    Consultant indépendant.
    Architecture systèmes complexes. Programmation grosses applications critiques. Ergonomie.
    C, Fortran, XWindow/Motif, Java

    Je ne réponds pas aux MP techniques

  3. #1203
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    259
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 259
    Points : 607
    Points
    607
    Par défaut
    Citation Envoyé par souviron34 Voir le message
    le swap, ça te dit rien ?
    Le Swap et la mémoire virtuelle c'est pas la même chose

  4. #1204
    Expert éminent sénior

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    10 603
    Détails du profil
    Informations personnelles :
    Âge : 66
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 603
    Points : 17 913
    Points
    17 913
    Billets dans le blog
    2
    Par défaut
    la mémoire virtuelle englobe le swap..
    "Un homme sage ne croit que la moitié de ce qu’il lit. Plus sage encore, il sait laquelle".

    Consultant indépendant.
    Architecture systèmes complexes. Programmation grosses applications critiques. Ergonomie.
    C, Fortran, XWindow/Motif, Java

    Je ne réponds pas aux MP techniques

  5. #1205
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    259
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 259
    Points : 607
    Points
    607
    Par défaut
    Dans la mesure ou tu peux avoir 3 Go de mémoire virtuelle allouée et 0 octet de swap utilisé tout en ayant pas plus de 1 Go de mémoire vive utilisé CQFD

  6. #1206
    Expert éminent sénior
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Points : 23 190
    Points
    23 190
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par Iaurkano Voir le message
    Le garbage collector n'alloue ni ne gère la mémoire de l'application.....

    c'est n'importe quoi !!!
    Reprenons :

    - La VM Java S'occupe de la gestion de la mémoire de l'application JAVA qui est éxécutée entre autres mais fait beaucoup d'autre chose....

    - Le Garbage collector s'occupe de libérer de la mémoire les objet inutilisé de l'application.
    Je ne pourrais pas affirmer si l'allocation de la mémoire auprès du système dépend plus précisément du GC ou de la JVM, mais le GC s'occupe également de fournir la mémoire utile à la création d'objet, et à redimensionner le heap lorsqu'il le faut (donc à faire une allocation mémoire auprès du système).

    Après on peut appeler cela comme on veut, mais pour moi cela consiste à gérer la mémoire...

    a++

  7. #1207
    Membre confirmé Avatar de a028762
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    419
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 419
    Points : 537
    Points
    537
    Par défaut Le thème, c'est la comparaison entre Java et C++ ?
    Vieux développeur, après avoir appris le COBOL (si ! si!) , tâté de l'ASSEMBLEUR, j'ai surtout fait du BASIC et du FORTRAN dans ma jeunesse.
    J'ai fait ensuite quelques applets en JAVA, pas estomaqué par la vitesse (en applet), je m'éclate vraiment depuis quelques années avec le PHP.
    Je cherche un langage plus rapide que PHP pour certaines fonctions n'ayant pas à accéder à l'interface HTML (batchs, calculs , moulinettes avec MYSQL, etc ...)
    Un peu déçu de ne pas trouver de réponse à cette question sur ces deux langages dans cette discussion (ex)centrée sur la gestion de la mémoire, et j'avoue que ce n'est pas mon premier souci, ni celui de quelqu'un qui voudrait se faire un avis extérieur ....
    Alors, les spécialistes

  8. #1208
    Membre éprouvé
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    780
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mai 2006
    Messages : 780
    Points : 1 176
    Points
    1 176
    Par défaut
    Citation Envoyé par a028762 Voir le message
    Vieux développeur, après avoir appris le COBOL (si ! si!) , tâté de l'ASSEMBLEUR, j'ai surtout fait du BASIC et du FORTRAN dans ma jeunesse.
    J'ai fait ensuite quelques applets en JAVA, pas estomaqué par la vitesse (en applet), je m'éclate vraiment depuis quelques années avec le PHP.
    Je cherche un langage plus rapide que PHP pour certaines fonctions n'ayant pas à accéder à l'interface HTML (batchs, calculs , moulinettes avec MYSQL, etc ...)
    Un peu déçu de ne pas trouver de réponse à cette question sur ces deux langages dans cette discussion (ex)centrée sur la gestion de la mémoire, et j'avoue que ce n'est pas mon premier souci, ni celui de quelqu'un qui voudrait se faire un avis extérieur ....
    Alors, les spécialistes
    utilise n'importe quel autre langage "non web"

    d'autres questions?

  9. #1209
    Expert éminent sénior
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Points : 12 977
    Points
    12 977
    Par défaut
    Citation Envoyé par a028762 Voir le message
    Vieux développeur, après avoir appris le COBOL (si ! si!) , tâté de l'ASSEMBLEUR, j'ai surtout fait du BASIC et du FORTRAN dans ma jeunesse.
    J'ai fait ensuite quelques applets en JAVA, pas estomaqué par la vitesse (en applet), je m'éclate vraiment depuis quelques années avec le PHP.
    Je cherche un langage plus rapide que PHP pour certaines fonctions n'ayant pas à accéder à l'interface HTML (batchs, calculs , moulinettes avec MYSQL, etc ...)
    Même au niveau web (en parlant de J2EE, pas des applets) java s'avère plus que probablement plus rapide que PHP de par sa nature. En effet java eest semi compilé avec par la suite une compilation en natif au moment de l'exécution (aka compilation Just In Time). De même, pour les batchs, que ce soit des bachs de calcul non SGBD ou des insertions SGBD en mode batch. Java a servi a créer certains des ETL confirmés du marché (comme Talend ou sunopsis par exemple) qui sont des programmes absolument pas orientés web mais plutôt performance sur des traitements etchargements de très gros volumes de données.
    Même pour la partie web tu as des frameworks en java qui te simplifient amplement le travail, structurent tes développements d'une façon un minimum correcte, enfin voilà.
    Hey, this is mine. That's mine. All this is mine. I'm claiming all this as mine. Except that bit. I don't want that bit. But all the rest of this is mine. Hey, this has been a really good day. I've eaten five times, I've slept six times, and I've made a lot of things mine. Tomorrow, I'm gonna see if I can't have sex with something.

  10. #1210
    Membre chevronné
    Avatar de lilington
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2005
    Messages
    681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Chine

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2005
    Messages : 681
    Points : 1 800
    Points
    1 800
    Par défaut
    dis donc j'aime bien comment le sujet est devenu un sujet passionne et remplit de hors sujets.
    pour ma part, bien que pro C/C++ faux dire que ya pas vraiment a comparer avec java et en general les languages qui fonctionnent avec des machines virtuelles. car le but n'est pas le meme et ceux sur plusieurs points de vue dont un essentiel, la productivite. je m'explique:
    C est tout sauf un langage productif, le temps qu'on mets a code et a gerer la memoire ou autre est un temps perdu pour beaucoup de gens. moi je considere des langages come Java, C# et autres comme des langages d'entreprises, il faut aller vite sans avoir a se soucier d'autre chose que le bon fonctionnement de notre code. ainsi bien qu'il soit possible de faire tout ou presque tout ce que peuvent faire c et c++, ces langages ne seront pas utiliser quand on a besoin de pomper dans les ressources (jeux video next gen , gros similateur genre nasa...). j'ai bien dit ne seront pas choisi ca ne veux pas dire impossible de faire pour eux. Bref quand j'ai besoin de faire un travail rapide je tourne le dos a mon language preferer et regarde du cote de java python ou autre. mais dans tous les autres cas je ne vois pas l'interret de des JVM si ce n'est de rendre les programmeurs paraisseux et de plus en plus ignorant. car faut le reconnaitre ceux qui programme en C la plus par du temps on plus de connaissance sur le fonctionnement OS et de l'ordinateur que les autres. s'ils vous plait ne prenez pas une partie de ma phrase pour me contredire j'ai bien dit la plus par du temps et non "savent plus que les autres".
    pour conclure et c'est juste mon opinion. java = je suis presser et j'ai pas besoin de savoir ni de gerer ce qui ne me conserne pas. et C = ok je veux un travail propre mais je prend en plus un travail supplementaire en gerant et apprenant des choses qui ne concernent pas directement mon projet. si tout le monde vois comme ca les pro java et les pro C arreteront de se mordent car ils comparent deux langages aux objectifs differents.
    Petit lien vers mon premier jeux SDL2/C
    http://store.steampowered.com/app/72..._Soul_Of_Mask/
    la suite? ca vient,ca vient!

  11. #1211
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    259
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 259
    Points : 607
    Points
    607
    Par défaut
    Citation Envoyé par lilington Voir le message
    dis donc j'aime bien comment le sujet est devenu un sujet passionne et remplit de hors sujets.
    pour ma part, bien que pro C/C++ faux dire que ya pas vraiment a comparer avec java et en general les languages qui fonctionnent avec des machines virtuelles. car le but n'est pas le meme et ceux sur plusieurs points de vue dont un essentiel, la productivite. je m'explique:
    C est tout sauf un langage productif, le temps qu'on mets a code et a gerer la memoire ou autre est un temps perdu pour beaucoup de gens. moi je considere des langages come Java, C# et autres comme des langages d'entreprises, il faut aller vite sans avoir a se soucier d'autre chose que le bon fonctionnement de notre code. ainsi bien qu'il soit possible de faire tout ou presque tout ce que peuvent faire c et c++, ces langages ne seront pas utiliser quand on a besoin de pomper dans les ressources (jeux video next gen , gros similateur genre nasa...). j'ai bien dit ne seront pas choisi ca ne veux pas dire impossible de faire pour eux. Bref quand j'ai besoin de faire un travail rapide je tourne le dos a mon language preferer et regarde du cote de java python ou autre. mais dans tous les autres cas je ne vois pas l'interret de des JVM si ce n'est de rendre les programmeurs paraisseux et de plus en plus ignorant. car faut le reconnaitre ceux qui programme en C la plus par du temps on plus de connaissance sur le fonctionnement OS et de l'ordinateur que les autres. s'ils vous plait ne prenez pas une partie de ma phrase pour me contredire j'ai bien dit la plus par du temps et non "savent plus que les autres".
    Tu n'as pas tort, je nuancerai tout de même un peu, tu dis que lorsqu'on a besoin de puissance on prend pas java, c'est pas tout a fait exact. Le truc de java c'est aussi tout l'écosysteme qui tourne autour, et en particulier les serveurs d'application. Et ces derniers facilitent grandement tout ce qui est clustering, c'est la raison pour laquelle en téléphonie on fait beaucoup de java et on en fera beaucoup plus, tout ca pour gérer des millions d'utilisateurs.

    Citation Envoyé par lilington Voir le message
    pour conclure et c'est juste mon opinion. java = je suis presser et j'ai pas besoin de savoir ni de gerer ce qui ne me conserne pas. et C = ok je veux un travail propre mais je prend en plus un travail supplementaire en gerant et apprenant des choses qui ne concernent pas directement mon projet. si tout le monde vois comme ca les pro java et les pro C arreteront de se mordent car ils comparent deux langages aux objectifs differents.
    Là par contre je ne suis pas du tout d'accord avec ta conclusion.
    Ca donne l'impression que tu fais le truc en java, ok mais si tu le fais en c++ ca sera mieux parce qu'en c++ on code proprement. Oui c'est sur si on prend pas le même soin a écrire le java ca va être pourri, c'est d'ailleurs souvent la réaction des développeurs c++ quand ils se mettent à java. Ils se disent que c'est un langage de VM dont qu'on peut faire n'importe quoi (et c'est ce qu'ils font et ils pondent de la m....)

  12. #1212
    Membre chevronné
    Avatar de lilington
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2005
    Messages
    681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Chine

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2005
    Messages : 681
    Points : 1 800
    Points
    1 800
    Par défaut
    quand je parle de puissance je veux dire que avec java il faut booster la machine, avec c/c++ on peut arriver au meme resultat avec une configue plus modeste. bref de nos jours les pc sont de plus en plus puissant ca fait que on peut justement pour la question puissance ce passer du c (pas toujours quand meme). ce de ca que je parle. car faut le dire la JVM ca consomme aussi en ressource.

    alors le deuxieme point, faut reconnaitre que les programmeurs c/c++ font souvent n'importe quoi avec java, j'en fait partis et c'est pourca d'ailleur que mes codes en php aussi sont tres sales. Mais disons la verite, qu'apres ton en programmant avec java? on ne sait rien de la memoire, meme graphiquement on ne sait rien de ce qui ce passe, on code juste on devient de machine a developper, et c'est ce que microsoft veut faire des gens avec ses versions de .net de plus en plus robotique. on veut nous transformer en robot.
    Petit lien vers mon premier jeux SDL2/C
    http://store.steampowered.com/app/72..._Soul_Of_Mask/
    la suite? ca vient,ca vient!

  13. #1213
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    259
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 259
    Points : 607
    Points
    607
    Par défaut
    Citation Envoyé par lilington Voir le message
    quand je parle de puissance je veux dire que avec java il faut booster la machine, avec c/c++ on peut arriver au meme resultat avec une configue plus modeste. bref de nos jours les pc sont de plus en plus puissant ca fait que on peut justement pour la question puissance ce passer du c (pas toujours quand meme). ce de ca que je parle. car faut le dire la JVM ca consomme aussi en ressource.

    alors le deuxieme point, faut reconnaitre que les programmeurs c/c++ font souvent n'importe quoi avec java, j'en fait partis et c'est pourca d'ailleur que mes codes en php aussi sont tres sales. Mais disons la verite, qu'apres ton en programmant avec java? on ne sait rien de la memoire, meme graphiquement on ne sait rien de ce qui ce passe, on code juste on devient de machine a developper, et c'est ce que microsoft veut faire des gens avec ses versions de .net de plus en plus robotique. on veut nous transformer en robot.
    Je suis pas d'accord sur le fait qu'on ne sache rien de la mémoire. En effet on peut faire du java et ne rien savoir de la mémoire, mais on fera dans ce cas des développements minables.

  14. #1214
    Membre averti Avatar de fantomas261
    Inscrit en
    Avril 2007
    Messages
    486
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 486
    Points : 331
    Points
    331
    Par défaut
    je reconnais que java est un bon langage mais il y a trop de choses abstraites, et ça m'énerve un peu

  15. #1215
    Alp
    Alp est déconnecté
    Expert éminent sénior

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

    Informations forums :
    Inscription : Juin 2005
    Messages : 8 575
    Points : 11 860
    Points
    11 860
    Par défaut
    Des choses abstraites, en Java ?

    A moins que tu veuille dire "trop d'interfaces", je ne vois vraiment pas ...

  16. #1216
    Expert éminent sénior
    Avatar de Mat.M
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    8 361
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 8 361
    Points : 20 381
    Points
    20 381
    Par défaut
    Citation Envoyé par lilington Voir le message
    quand je parle de puissance je veux dire que avec java il faut booster la machine, avec c/c++ on peut arriver au meme resultat avec une configue plus modeste. bref de nos jours les pc sont de plus en plus puissant ca fait que on peut justement pour la question puissance ce passer du c (pas toujours quand meme). ce de ca que je parle. car faut le dire la JVM ca consomme aussi en ressource.
    Tout à fait d'accord avec une machine moins puissante on peut faire plus facilement du développement C/C++ parce que cela requiert moins de ressources ( quoique VS2008 est assez lourd ).
    Par contre il ne faut pas se méprendre : tout le monde dit la puissance des machines augmente ! Donc cela vaut le coup d'avoir des langages avec machine virtuelle et ramasse-miette.
    Euhh oui je veux bien mais la loi de Moore est erronnée ( c'était un bel argument marketing d'Intel )
    http://fr.wikipedia.org/wiki/Loi_de_Moore
    Et puis surtout les projets deviennent de plus en plus complexes et denses donc ce que l'on gagne avec l'hypothètique performance accrue des machines on le reperd de l'autre avec des projets qui font des milliers de lignes de code qui gèrent des tonnes de trucs..


    meme graphiquement on ne sait rien de ce qui ce passe, on code juste on devient de machine a developper, et c'est ce que microsoft veut faire des gens avec ses versions de .net de plus en plus robotique. on veut nous transformer en robot.
    +1 .NET et Java je trouve que c'est pour des dev standardisés tu ne peux rien controler.

  17. #1217
    Expert éminent sénior
    Avatar de Mat.M
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    8 361
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 8 361
    Points : 20 381
    Points
    20 381
    Par défaut
    Puisque c'est le débat C++ vs Java il y a quelque chose que j'apprécie particulièrement en C++ c'est de pouvoir utiliser le double scope ( :: ) ou opérateur de résolution de portée.
    En C++ on peut déclarer ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    //fichier .h
    class  classeQuelconque
    {
    public:
    void Methode1();
    void Methode2();
    };
    
    //....
    //Implementation
    void classeQuelconque::Methode1()
    {
    
    }
    
    void classeQuelconque::Methode2()
    {
    
    }
    En Java/C# c'est plus simple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    public class classeQuelconque
    {
    void Methode1()
    {}
    
    void Methode2()
    {
    }
    };
    Mais paradoxalement je préfère de loin la possibilité du C++ ( bien que cela rajoute des lignes de code )
    Pourquoi ? Parce que cela permet d'aérer et de détailler plus une classe plutot que de tout rassembler dans un bloc en Java..
    Bon c'est mon point de vue il vaut ce qu'il vaut

  18. #1218
    Inactif  
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    357
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 357
    Points : 637
    Points
    637
    Par défaut
    Y'a le code folding sinon...

  19. #1219
    Membre Expert

    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Juin 2003
    Messages
    4 506
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 506
    Points : 5 724
    Points
    5 724
    Par défaut
    quand je parle de puissance je veux dire que avec java il faut booster la machine, avec c/c++ on peut arriver au meme resultat avec une configue plus modeste. bref de nos jours les pc sont de plus en plus puissant ca fait que on peut justement pour la question puissance ce passer du c (pas toujours quand meme).
    Biensur. Les performances que je sache c'est plus facile à améliorer que des milliers de ligne de code en C ou C+. Tu arrives au même résultat au même cout de developpement peut-être mais d'exploitation ou maintenance je doute

    Combien de temps vont persister des applis à base de pointeur ? Dans 10 ou 20 ans tu penses encore qu'on enseignera encore cela ?

    Imagine que non...Maintenir du code java sera plus facile parce qu'on écrit du code plus conceptuel sans se soucier de la machine dans 10 ans pour les programmeurs se sera pas un luxe que d'arriver sur des applis avec des pointeurs ou constructeur de recopie partout cela montrera que cela n'a pas plus avancé...
    " Dis ce que tu veux qui insulte mon honneur car mon silence sera la réponse au mesquin.
    Je ne manque pas de réponse mais : il ne convient pas aux lions de répondre aux chiens ! " [Ash-Shafi'i ]

  20. #1220
    Membre émérite
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    1 537
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 537
    Points : 2 548
    Points
    2 548
    Par défaut
    Attention au sujet des perfs. Si bien sur, dans l'absolu on pourra toujours faire mieux en C++ qu'en java, dans la pratique c'est pas toujours le cas.

    En effet, cela demanderait beaucoups trop de temps et de travail en C++, et le gain n'est important que dans des cas particulier.

    Prenons un exemple : combien de temps pour coder une memory pool, surcharger les opérateurs new et delete, recoder les containers de base avec et le tout thread-proof (la gestion mémoire, pas forcement les containers) ? Il y en a pour des plombes alors que tout ça existe en java nativement.

    La grande question est surtout, est-ce que cela vaut le coup d'aller jusqu'au bout de ce qu'on peut donner en C++ ?

    Car le gain est de toute façon linéaire. C'est a dire rien comparé a ce qu'on peut gagner algorithmiquement. Et il vaut souvent mieux travailler sur ce point, en java comme en C++.

    Qu'on en s'y trompe pas, je suis un adepte du C++. C'est un langage très intéressant car on peut tout faire, a condition de s'en donner les moyens.

    Mais rien ne sert de sortir le marteau piqueur pour casser une noix. Dans biens des cas, java est tout a fait adapté, et même mieux que C++. En effet, le développement sera plus rapide et on aura plus de temps a consacrer à l'optimisation algorithmique. Il faudrait un temps bien plus important pour obtenir la même chose en C++ et énormément plus important pour avoir des performances supérieures.

    Et finalement, à part une consommation mémoire importante, java peut-être très rapide s'il est bien codé. Même parfois plus rapide que du C++ si l'on se contente des allocateurs mémoire de base de ce dernier.

Discussions similaires

  1. [Débat] Technologie .NET vs JAVA
    Par neo.51 dans le forum Débats sur le développement - Le Best Of
    Réponses: 1047
    Dernier message: 14/01/2019, 16h15
  2. [Débat] .NET vs JAVA/J2EE
    Par tssi555 dans le forum VB.NET
    Réponses: 5
    Dernier message: 10/12/2008, 07h54

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