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

Dotnet Discussion :

Pourquoi VB .NET est lent ?


Sujet :

Dotnet

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif Avatar de Aizen64
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    563
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 563
    Par défaut Pourquoi VB .NET est lent ?


    Je me demandais un truc concernant VB et VB .NET : qu'est ce qui fait que ce language soit bien plus lent que du C/C++ ou Java ? Je n'ai jamais entendu parler d'applications lourdes développées en VB, pourquoi ?

  2. #2
    Membre Expert
    Avatar de Aspic
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    3 905
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2005
    Messages : 3 905
    Par défaut
    Citation Envoyé par Aizen64


    Je me demandais un truc concernant VB et VB .NET : qu'est ce qui fait que ce language soit bien plus lent que du C/C++ ou Java ? Je n'ai jamais entendu parler d'applications lourdes développées en VB, pourquoi ?
    Peut etre tout simplement parce que c'est moins puissant

    Biensur il y a des différences de vitesse entre vb6 et vb.net 03 et 05, pour cela va voir ici :
    http://plasserre.developpez.com/v7-3.htm
    Qui ne tente rien n'a rien !
    Ce qui ne nous tue pas nous rends plus fort !!
    Mon projet ZELDA en C++/Allegro
    http://www.tutoworld.com - Le Forum -
    Mes ressources Dotnet (cours, sources, tutos)
    --------------------------------------------
    + + =

    Ne pas oublier le Tag !

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    97
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Janvier 2007
    Messages : 97
    Par défaut
    Le VB est tres utile pour les developpement rapide orienté gestion, il a une synthaxe simple (basique ) qui le rend facile à prendre en main : beaucoup de PME, utilisent ce langage.

    Concernant la rapidité, c'est vrai si tu compares vb6 à c/c++, mais si tu compares C# à VB.NET, il n'y a plus de différence de rapidité puisque les applications .NET (managée) sont compilée en un langage intermédiaire.

  4. #4
    Membre émérite
    Profil pro
    Inscrit en
    Août 2003
    Messages
    835
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2003
    Messages : 835
    Par défaut
    Citation Envoyé par Aizen64


    Je me demandais un truc concernant VB et VB .NET : qu'est ce qui fait que ce language soit bien plus lent que du C/C++ ou Java ? Je n'ai jamais entendu parler d'applications lourdes développées en VB, pourquoi ?
    VB.Net plus lent que Java ? Je ne sais pas ou tu as entendu ça. En ce qui concerne le C++, il suffit de comprendre que le langage est plus bas niveau, le développeur a plus de contrôle et en particulier sur la gestion de la mémoire. Dotnet est un environement managé, c'est à dire qu'un certain nombre de choses sont faites par le framework pour simplifier la tâche du développeur, comme la gestion de la mémoire, ou la vérification dynamique de différents points. Au final tu obtiens deux philosophies différentes, une plus proche de la machine offrant plus de contrôle mais difficile à bien maitriser et demandant une trés grande rigueur, et une autre facilitant le développement rapide, plus facile à maitriser, plus haut niveau et par la même induisant un coût en terme de performance.

    Cela dit, un programme .net correctement écrit peut trés probablement rivaliser avec un programme C++ bien écrit également. Le tout est de maîtriser la plateforme et ce qui se passe "sous le manteau". Attention aux comparaisons hâtives en ce qui concerne les différences de performances de différents langages/plateformes...

    PS: Java se rapproche plus de la philosophie .net que de celle du C++

  5. #5
    Membre Expert
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    1 103
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 103
    Par défaut
    Sphax c'est tout a fait vrai,

    Un code bien écrit en C#, VB.NET ou meme C++/CLI peut etre voir sera tout aussi rapide qu'un programme entièrement écrit en C++, car le framework, converti le code intermédiaire en code machine en arrière plan, et une fois le code natif généré, il l'utilise en lieu et place du code intermédiaire.
    Le code natif, c'est ce que génère C++ normal.

    Disons que l'autre aspect qui fait que programmer en .NET ou en Java est plus "rentable" qu'en C++, en dehors de la gestion mémoire dont tu n'a pas a t'occuper, c'est tout l'API/Framework. La librairie de classes disponibles.
    Que tu sois en Java ou en .NET, tu as un choix de classes de bases vastes, qui vont dans tous les domaines pratiquement, de la chose hyperbasique à des notions hyperavancées. On y trouve deja la majorité des structures de données informatiques qu'on peut retrouver, les tableaux, les listes, les arbres de recherches, les tables de hashage, quelques implantations particulières de graphes ... Rien que cela, cela fait gagner un temps considérable en développement par rapport à des langages comme C++, bien sure on trouve des librairies déjà faites en plus de la libc++ mais tu n'a aucun controle sur ses lib indécompilables la plupart du temps, et dont l'origine peut etre parfois douteuse, sans parler des bugs qu'on peut y trouver, car nul n'est parfait.

    En plus C++ n'a pas de vraie lib pour les expressions règulières, alors que le framework implante des mécanismes de regexp particulièrement bien développés et vraiment très rapide par rapport à la référence dans le domaine qui reste Perl.

  6. #6
    Rédacteur
    Avatar de SaumonAgile
    Homme Profil pro
    Team leader
    Inscrit en
    Avril 2007
    Messages
    4 028
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Team leader
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2007
    Messages : 4 028
    Par défaut
    Citation Envoyé par cinemania
    sans parler des bugs qu'on peut y trouver, car nul n'est parfait.
    Tu as exactement le même problème avec le Framework, il n'est pas exempt de bug.
    Citation Envoyé par cinemania
    mais tu n'a aucun controle sur ses lib indécompilables la plupart du temps
    Tu n'as pas de controle sur les classes du framework .NET alors qu'avec des librairies C++ OS tu peux avoir accès aux sources et faire des ajustements si nécessaire.
    Citation Envoyé par cinemania
    dont l'origine peut etre parfois douteuse,
    Quant à l'origine, je ne vois pas en quoi c'est un argument, il suffit d'utiliser les standards...
    Citation Envoyé par cinemania
    En plus C++ n'a pas de vraie lib pour les expressions règulières
    Besoin d'un MessageBox amélioré ? InformationBox pour .NET 1.1, 2.0, 3.0, 3.5, 4.0 sous license Apache 2.0.

    Bonnes pratiques pour les accès aux données
    Débogage efficace en .NET
    LINQ to Objects : l'envers du décor

    Mon profil LinkedIn - MCT - MCPD WinForms - MCTS Applications Distribuées - MCTS WCF - MCTS WCF 4.0 - MCTS SQL Server 2008, Database Development - Mon blog - Twitter

Discussions similaires

  1. Réponses: 5
    Dernier message: 11/04/2014, 17h01
  2. pourquoi mon virtualdevice est lent sur un pc rapide ?
    Par clavier12AZQSWX dans le forum Android
    Réponses: 8
    Dernier message: 15/06/2012, 18h47
  3. [ADO.Net][C#]Pourquoi connexion fermée est active>SQLServ
    Par superbobo dans le forum Accès aux données
    Réponses: 3
    Dernier message: 25/01/2006, 17h57
  4. Pourquoi cette requête est lente ?
    Par zenzo dans le forum Langage SQL
    Réponses: 7
    Dernier message: 06/01/2006, 15h15

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