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. #1901
    Membre habitué
    une veille discussion mais pleine de bonnes choses, je pense la maîtrise du java est un plus
    Fely Kanku Developpeur .Net et analyste programmeur

  2. #1902
    Membre habitué
    C++ vs java ? j'aurais plutot mis

    pointeur vs référence et heritage multiple vs composition. même si le résumé ne s'arrete pas là il s'agit des 2 principaux totems des 2 langages.

  3. #1903
    Membre régulier
    le c++ est utilisable par les chercheurs dans des labos ainsi il est académique ,c'est le premier langage a étudier dans les lycées et les universités , par contre le java est un outil professionnel utilisé dans les boites de développement.

  4. #1904
    Nouveau Candidat au Club
    Citation Envoyé par abdennour bouaicha Voir le message
    le c++ est utilisable par les chercheurs dans des labos ainsi il est académique ,c'est le premier langage a étudier dans les lycées et les universités , par contre le java est un outil professionnel utilisé dans les boites de développement.
    Bonjour,
    Comme premier langage j'aurais plutôt dit Python, depuis le 3, ou dans notre cas ici Java.
    Et le C++ est aussi beaucoup utilisé en entreprise. Il pose cependant un certain nombre de soucis, on peut rapidement mal faire et provoquer des conflits en mémoire ou des comportements aberrants.
    Mais bien programmé ça reste l'un des langages les plus rapides et puissants.

  5. #1905
    Expert éminent sénior
    Citation Envoyé par gzii69 Voir le message
    Il pose cependant un certain nombre de soucis, on peut rapidement mal faire et provoquer des conflits en mémoire ou des comportements aberrants.
    Mais bien programmé ça reste l'un des langages les plus rapides et puissants.
    le problème restera le même avec des langages de programmation "managed"...
    En Net ou en Java,si le code est mal programmé eh bien on risque d'avoir une exception qui va tout bloquer le programme donc faudra tout relancer.
    Pour des projets de logiciel de gestion genre compta comme ça l'utilisateur il rentre des tas de données ça plante à cause d'un exception donc il faut tout recommencer.

    Cependant en contrepartie le problème des pointeurs en C/C++ s'ils sont mal utilisés c'est les effets de bords oui sur la mémoire centrale.
    C'est pour cela qu'il y a des templates comme les "smart pointers"
    La théorie, c'est quand on sait tout et que rien ne fonctionne.
    La pratique, c'est quand tout fonctionne et que personne ne sait pourquoi.
    ( A Einstein)

  6. #1906
    Expert éminent sénior
    Depuis quand les programmes "non-managed" ne plantent pas ???
    Cette signature n'a pas pu être affichée car elle comporte des erreurs.

  7. #1907
    Expert éminent sénior
    Citation Envoyé par gzii69 Voir le message
    Bonjour,
    Comme premier langage j'aurais plutôt dit Python, depuis le 3, ou dans notre cas ici Java.
    Et le C++ est aussi beaucoup utilisé en entreprise. Il pose cependant un certain nombre de soucis, on peut rapidement mal faire et provoquer des conflits en mémoire ou des comportements aberrants.
    Hummm... cela dépendra en fait surtout de l'approche et de la compréhension du langage.

    Il est clair que si tu t'obstines à gérer la mémoire à la main, comme tu le ferais en C, (et comme trop de cours indiquent encore de le faire), tu te place dans une situation dans laquelle tu risques -- effectivement -- de causer des conflits et des choses encore bien moins faciles à résoudre.

    Cependant, ce n'est pas un hasard si on parle depuis trèèèss longtemps de RAII en C++, car si tu respecte ce principe (et le principe de la responsabilité unique), les choses peuvent devenir beaucoup plus faciles!

    Mieux encore, depuis l'arrivée de C++11 et de ses classes std::unique_ptr (qui étaient déjà disponibles bien plus tôt au travers du framework boost), il te suffit de pouvoir qui est le "propriétaire légal" d'une ressource, quel élément sera le seul à pouvoir décider de libérer cette ressources (à moins qu'il y en ait plusieurs dans le cas, raison de l'existence de std::shared_ptr et destd::weak_ptr) pour être sur d'éviter les problèmes
    Citation Envoyé par adiGuba Voir le message
    Depuis quand les programmes "non-managed" ne plantent pas ???
    Depuis toujours, lorsqu'ils sont bien codés
    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