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

Choisir un environnement de développement Discussion :

Choisir Visual c++ ou Borland C++Builder ? [Débat]


Sujet :

Choisir un environnement de développement

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2002
    Messages : 3
    Par défaut Choisir Visual c++ ou Borland C++Builder ?
    J'ai la possibilité d'utiliser c++ builder ou Visual c++ 6.
    Sur quels critères choisir ?.
    Quel est l'avantage d'utiliser Visual c++ par rapport à Builder C++?
    Merci

  2. #2
    Membre expérimenté Avatar de Epictète
    Inscrit en
    Mars 2002
    Messages
    219
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 219
    Par défaut
    Les deux produits ne sont pas comparables.
    Les deux sont valables pour programmer en C++ pour Windows.

    - Les applications C++Builder 6 sont portable sous Linux avec la CLX, ce n'est pas le cas pour VC++

    - Borland C++Builder est un RAD, c'est à dire que tu peux développer plus rapidement des interfaces utilisateurs et des applications base de données, et presque aussi facilement qu'avec VB, avec la souris par glisser/coller de composants tout faits.

  3. #3
    Invité
    Invité(e)
    Par défaut
    bin pour visual :
    - un debugueur extremment puissant
    - une documentation programmation c/c++ windows qui est une des meilleure (la meilleure ?) sur le marché, msdn
    - une programmation windows a la source ( = proche de l'os windows)

  4. #4
    Invité de passage
    Inscrit en
    Avril 2007
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 1
    Par défaut visual c++
    Citation Envoyé par ZeDuckMaster
    bin pour visual :
    - un debugueur extremment puissant
    - une documentation programmation c/c++ windows qui est une des meilleure (la meilleure ?) sur le marché, msdn
    - une programmation windows a la source ( = proche de l'os windows)
    ------------------------------------------------------------------------
    certes la documentation sur visual C++ abonde, mais c'est le visual lui même qui cloche, car il ne comporte pas une logique que l'on comprend et que l'on suit pour programmer comme c'est le cas pour delphi ou visual basic, pour chaque truc il faut que l'on lisent l'astuce à appliquer, et je me demande ou l'ecrivain de l'astuce l'a trouvée, je crois que le visual c++ est une tentative des programmeurs c++ a s'adapter à l'univers windows, mais malgré la pub qu'on lui fait, pour moi ca vaut pas le visual basic ou le delphi, c'est un langage de bas niveau (composent machines) certes, mais pas evolué.

  5. #5
    Membre confirmé
    Avatar de dj_benz
    Homme Profil pro
    Inscrit en
    Octobre 2002
    Messages
    178
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Octobre 2002
    Messages : 178
    Par défaut
    Bonjour,
    je viens de lire un article expliquant que Borland allait laisser tomber ses IDE (Builder, Delphi...).

    Pour ma société, je dois faire un choix entre C++Builder et VisualC++. Je suis bien familiarisé avec Builder (pas pro, mais j'en ai pris l'habitude et je l'aime beaucoup). De plus, étant étudiant, j'ai pu avoir avec Microsoft, des licences de Visual 2005. Je me trompe peut-être, mais pour faire tourner une appli qu'on développe avec Visual, il faut avoir le framework installé? Si je développe un outil pour ma boîte, tout le monde devra installer le framework sur son PC? Avec borland, seulement 2 DLL et 3 BPL son suffisants (au total, 2Mo). La distribution de l'appli se fait plus simplement avec Borland, alors qu'on pourrait penser que comme c'est Microsoft, ce qu'il faut pour une appli Visual sera intégré à Windows, mais non.
    Ca me fait peur d'avoir à choisir Visual uniquement pour ne pas me retrouver coincé d'ici quelques années, un peu comme vous avec OWL.

    Qu'en pensez vous de cette anonce?
    Benz

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 20
    Par défaut
    Je ne pense pas qu'avec Visual Studio 2005 il faille installer le framework si l'on compile le C++ en natif. Je suis passé récemment de VC 6.0 à Visual Studio 2005 pour mes programmes natifs il y a peu de temps, et il n'utilise pas le framework.

  7. #7
    Invité
    Invité(e)
    Par défaut
    personnellement ya un truc qui me plait pas avec les RAD justement, c'est que tu controles pas ... c'est pour ca que je n'utilises pas jbuilder par exemple.

    des que tu veux modifier un truc qui n'est pas dans l'ide, bin tu te prends la tete tout simplement, et surement plus que si tu fesais l'effort d'apprendre comment ca marche ...

    quand au debuggueur de borland, je serais curieux de le voir, pasque pour l'instant j'ai rien trouvé de mieux que celui de vc++ (pour le c/c++) tout os confondu ...

    pour l'anglais/francais on en a deja parlé dans un autre topic, et ce n'est surement pas un argument (mais ya msdn francais qui existe pour ceux qui ont la licence).

    msdn n'est pas un fouilli, il est extremement bien foutu.mais effectivement quand on sait pas ce qu'on cherche c'est comme quand on est dans une biblio, on sait pas par ou commencer ....

    dans le tutorial que tu me donnes ya pas un gramme de mfc dedans ...
    en ce qui concerne le dev des jeux, alors la j'ai d'enormes doutes en ce qui concerne les performances, et vaut mieux developper 2 versions, une pour linux et une pour windows (quel que soit l'ide) plutot que d'utiliser des bibliotheques generiques, car ce sont 2 systemes qui n'ont pas du tout la meme facon de fonctionner aussi bien au niveau du noyau que des peripheriques ...

    pourquoi sans passer ? pasque ca reste encore du RAD c++, c'est a dire entre vb et vc++...
    pour ceux qui developpent, utilisez borland ...
    pour ceux qui developpent "vraiment" sous windows, rien ne vaut visual ... pour l'instant.

  8. #8
    Futur Membre du Club
    Inscrit en
    Avril 2002
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 3
    Par défaut
    En ce qui me concerne je suis habitué à C++ Builder, j ai essayé de passer au visual C++ pour des raisons professionnelles. Mais a mon avis le fait que visual C++ soit utilisé dans beaucoup de boites est tout simplement stupide !
    Les compétences que j ai acquise avec Borland C++Builder sont perdues avec Visual C++ qui est d'un compliqué à s'arracher les cheveux.

    Pourquoi se prendre la tête avec VC++ à faire une interface graphique alors que Borland C++Builder nous propose une solution simple et trés rapide pour les créer facilement ?

    En ce qui concerne la prog système je ne vois pas du tout en quoi Borland serais moin bien que VC++.

  9. #9
    Nouveau candidat au Club
    Inscrit en
    Août 2006
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 2
    Par défaut demande aide
    salut,
    j'ai fait un prog qui permet de lire les 16 bits du compteur RTC 8254 de l'ordinateur. Mais, mon probleme c'est de convertir le meme programme en visual c++ pour une autre utilisation. si vous pouvez m'aider, je serai très reconnaissant et merci.
    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
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
     
    #include <dos.h>
    #include <string.h>
    #include <conio.h>
     
    unsigned long hrtime(void) // FONCTION DE LECTURE DU PORT
    {
    asm{
    pushf
    cli
    mov al,0x00
    out 0x43,al
    in al,0x40
    xchg ah,al
    in al,0x40
    xchg ah,al
    popf
    }
    }
     
    int main(int argc, char* argv[])
    {//INITIALISATIONDU COUNTER
    unsigned long elapsedTime ;
    asm{
    pushf
    cli
    mov al,0x34
    out 0x43,al
    xor al,al
    out 0x40,al
    out 0x40,al
    popf
    }
    int cnt = 0;
    while(cnt < 10)
    {
    elapsedTime = 65536 - hrtime();
    printf("%u",elapsedTime);
    printf("\n");
    cnt++;
    }
    getch();
    return 0;
    }
    ici le prog me return le nombre d'impulsion pour excuter l'instruction printf...

  10. #10
    Membre confirmé
    Étudiant
    Inscrit en
    Décembre 2005
    Messages
    53
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2005
    Messages : 53
    Par défaut
    Citation Envoyé par rico27fr
    Pourquoi se prendre la tête avec VC++ à faire une interface graphique alors que Borland C++Builder nous propose une solution simple et trés rapide pour les créer facilement ?

    En ce qui concerne la prog système je ne vois pas du tout en quoi Borland serais moin bien que VC++.
    tout à fait vrai vu tout le spectacle qu'il faut faire pour avoir un bon formulaire en VC++, je préfere créer une IDE en Ctraditionnel

  11. #11
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    59
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 59
    Par défaut
    pour mettre en place une interface utilisateur, borland est bien meilleure mais en ce qui concerne le reste le noyau du programme en c++,c'est une autre histoire.... dès que l'on se met à piloter des objets COM, des dll, etc... il faut comprendre la vcl.... et sur des gros projets, il faut avoir du temps .. heureusement que le IDE compiler speed non officiel en fait gagner ... d'ailleurs je ne comprend tjrs pas pquoi borland ne l'integre pas....
    tout cette perte de temps, et cette incompréhension a pour conséquence le passage sous MS

  12. #12
    Membre émérite
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    842
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 842
    Par défaut
    Je peux pas parler en connaissance des deeux edis. Mais je peux dire que pour le developpement d'application qui demandent bcp de ressoruces, il n'y a pas perte de perforamnces en utilisant CBuilder. De même qu'il ne doit pas y en avoir en utilisant Visual.

    J'utilises DirectX avec Borland, et il n'y a aucun problème, si ce n'est que depuis dx8 je crois que Microsoft refuse de livrer les librairies pour Borland avec le SDK. C'est lache non ? :) quoiqu'il en soit si on a reussi a telecharger le SDK, on a aucun mal a telecharger les librairies Boralnd.

  13. #13
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 53
    Par défaut re
    slut tous,

    j aimerai me mettre au c++ connaissant déjà delphi, java, php.

    mais apparement il vaut mieux prendre borland selon vous.

    je voudrais utiliser le c++ pour faire des animations 3D et des ptit jeux, j ai opter pour l open GL donc je suppose que vous me conseillerez borland C++ ??

  14. #14
    Membre à l'essai
    Inscrit en
    Juin 2003
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Juin 2003
    Messages : 7
    Par défaut
    Je suis passé au C++ depuis environ 1 ans après avoir atteint les limites du C. Je développe essentiellement des applications d'acquisition de donnée.

    J'ai eu la possibilité d'essayer plutôt longuement VC++ et C++Builder.
    Comme tout le monde l'a remarqué, C++Builder est un RAD alors que VC++ ne l'est pas.
    Cependant C++Builder n'a pas que des avantages.
    Le debugger est assez puissant mais celui de VC++ a des possibilité supplémentaire, en particulier le pas à pas dans des macros.
    La fonction de "code completion" de l'éditeur VC++ est plus tolérante aux erreurs de syntaxe qui précède le code à compléter, ce qui évite d'avoir trop souvent un sablier pour rien.
    VC++ est puissant mais compliqué. Les MFC sont très proches de l'API windows, ce qui rend difficile la programmation de haut niveau à l'aide de composants graphiques ou autre mais facilite l'accès aux fonctions de l'API en les encapsulant dans des objets C++ (cela dit, on peut aussi utiliser les MFC dans C++Builder, même si cela parait idiot à priori).

    Après beaucoup d'efforts, j'ai renoncé à utiliser VC++ à cause de l'omniprésence des macros qui rendent le code incompréhensible (ils n'ont pas dû suivre de cours de programmation chez Billou) et de l'envie d'utiliser un vrai RAD!

    Avantages de C++Builder :
    - interface utilisateur plus agréable
    - vrai RAD
    - code compréhensible (halte aux Wizards!)
    - compatibilité ANSI
    - portabilité vers Linux (si on se contente des objets CLX)

    Quelques défauts dans C++Builder :
    - héritage mutiple interdit avec des objets VCL (les objets viennent de Delphi)
    - la VCL n'est pas mutithread : il faut changer de thread pour accéder aux fenêtres
    - la traduction de l'aide à supprimé des références de l'index (ex :TObject n'y est pas) si cela peut être corrigé, merci de me le dire.

  15. #15
    Nouveau candidat au Club
    Inscrit en
    Août 2006
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 2
    Par défaut demande aide
    salut,
    j'ai lu dans votre msg que vous avez une experience sur l'acquisition des données. Dans le meme objectif, dans un projet d'acquisition des données j'ai voulu utiliser l'horloge de ma carte d'acquisition: cad je voudrais lire les bits du compteur 8254.
    Pour ce faire, j'ai commencé d'abord par la lecture du 16 bits de l'horloge RTC de mon ordinateur. c 'estva marcher je vais excuter le meme prog sur ma carte en changeant l'adresse memoire du circuit.
    j' ai etabli unprog en borland qui permet de compter le nbre d'impulsions pour excuter l'instruction printf, ca marche. Mais mon probleme c'est comment le convertir en visual c++ car la documentation de la carte ne me donne que des fonctions en visual c++ pour configurer la carte...

    Mon probleme c'est de convertir le meme programme en visual c ++. Si vous pouvez m'aider, je serai très reconnaissant et merci.
    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
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
     
    #include <stdio.h>
    #include <dos.h>
    #include <string.h>
    #include <conio.h>
     
    unsigned long hrtime(void) // FONCTION DE LECTURE DU PORT
    {
          asm
          {
               pushf
               cli
               mov al,0x00
               out 0x43,al
               in al,0x40
               xchg ah,al
               in al,0x40
               xchg ah,al
               popf
         }
    }
     
    int main(int argc, char* argv[])
    {
         //INITIALISATIONDU COUNTER
         unsigned long elapsedTime ;
         asm
         {
                pushf
                cli
                mov al,0x34
                out 0x43,al
                xor al,al 
                out 0x40,al
                out 0x40,al
                popf
         }
     
         int cnt = 0;
       for(int cnt = 0;cnt <10; cnt++)
        {
               elapsedTime = 65536 - hrtime();
               printf("%u\n",elapsedTime);
               getch();
        }
     
     
     return 0;
    }

  16. #16
    Membre confirmé
    Inscrit en
    Juin 2002
    Messages
    59
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 59
    Par défaut
    j'espere que ca ne derange pas trop ce debat
    juste une petit question
    la version VC++ .net actu
    encore pas RAD ?
    je sais,vous allez me dire : essayer et voyez ,mais malheuresement j'ai arreté d'utiliser VC depeuis sa 5eme version vu que ca coute un peu chere
    et que je ne l'utilise que pour etudier

    Merci

  17. #17
    Membre émérite
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    842
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 842
    Par défaut
    Dans les versions recentes de C++ builder, il me semble que le "code completion" a été bien revu, du moins il est bien plus sople dans la version 6 que dans la version 4.

    Je n'ai jamais eu non plus de prblèmes pour utiliser les fonctions de l'API avec la VCL. La plupart du temps il y a deds propriétés style Handle qui sont prévues pour etre utilisée lorsque l'on veut utiliser des fonctions de l'API, idem pour HDC, et pas mal d'autres trucs.

    Sinon, j'aimerais poser une question, j'ai jamais eu trrop l'occasion de programmer avec des threads, et j'ai du mal a voir ce qui pose problème dans le fait que la VCL ne soit pas multithread. Queslqu'un pourrait m'expliquer ?

  18. #18
    Membre à l'essai
    Inscrit en
    Juin 2003
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Juin 2003
    Messages : 7
    Par défaut
    Je n'ai jamais eu non plus de problèmes pour utiliser les fonctions de l'API avec la VCL.
    C'est vrai. Le seul problème avec les API c'est qu'elles ne sont pas objet.
    j'ai du mal a voir ce qui pose problème dans le fait que la VCL ne soit pas multithread
    Si tu n'as besoin que des événements, pas de problème : ils sont gérés par l'objet Application.
    Les threads sont utiles dans le cas de tâche de fond indépendantes du fonctionnement de l'interface. On peut parfois utiliser des timers sauf dans certains cas lorsqu'il n'y a pas d'objet Application (dans une DLL). Mais cela sort du sujet.

  19. #19
    Membre émérite
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    842
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 842
    Par défaut
    Pour diverse raison, j'ai abandonné l'usage des threads dans un projet. J'ai contourné le problème en déplacant la boucle des messages cad, et ecrivant une boucle style

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
      while (Condition)
      {
        Application->ProcessMessages()
     
        . . .
     
        // Traitement particulier
      }
    Pour des taches de fonds peu importantes, il y a aussi OnIdle().
    D'après ce que j'ai vu l'usage des threads n'est indispensable que lorsque l'on utilise des fonctions externes, qui ne sont pas prevues pour etre dans une boucle de messages, et qui bloquent l'application, comme certaines fonctions de l'API pour communiquer avec l'imprimante. Cela dit, dans certains cas, l'usage de threads simplifie les algorithmes.

  20. #20
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 28
    Par défaut
    Pour avoir utiliser les deux, voici mes conclusions :

    Général :
    BCB6++ : programme lourd, compilateur de qualité moyenne, complétition qui fonctionne rarement pour peu que le projet devienne complexe, RAD très efficace, débugger très limité suaf pour l'assembleur.
    Comprend les MFC, la CLX et la VCL, doc correcte.

    VC6 : programme lourd aussi, compilateur supérieur à celui de borland mais c'est pas encore ça, complétition corrccte, RAD inexistant, Bon débugger, mais pas pour l'asm

    VC7 : programme bcp moins lourd, bon compilateur mais ne vaut pas gcc ( ou mingw32), bonne complétition, RAD très moyen, très bon débugger mais toujours pas pour l'asm, comprend les MFC seulement


    Librairie :

    MFC : très complexes, mais efficaces, codées en C++ on peut donc fouiller dedans plus facilement, non portable

    VCL : simple, assez efficace, codée en Delphi, mais on est pas censé fouiller dedans (ça tombe bien, puisqu'on peux pas), non portable

    CLX : simple aussi, mais plus limité que les deux précédentes, assez lourde, toujours codée en Delphi, mais portable sous Linux (et Linux seulement).


    Conclusion :
    passez à Dev-C++/wxWindows, c'est très portable, rapide, facile, efficace et très portable.

Discussions similaires

  1. Wrapper Borland C++ Builder pour MS Visual Studio
    Par siragone dans le forum Visual Studio
    Réponses: 2
    Dernier message: 28/10/2013, 22h07
  2. Lib en visual C++ 6 --> borland C++ builder 6
    Par fred7163 dans le forum Bibliothèques
    Réponses: 4
    Dernier message: 04/03/2009, 14h55
  3. Convertir du Borland C++ Builder en Visual .NET 2005
    Par mastergoddot dans le forum Visual C++
    Réponses: 3
    Dernier message: 28/06/2007, 15h10
  4. conversion de projet Borland C++ builder en Visual C++ ou
    Par kurul1 dans le forum C++Builder
    Réponses: 2
    Dernier message: 12/09/2005, 08h30
  5. Que choisir ? Visual C++ ou Borland c++ builder ?
    Par ashram dans le forum Débats sur le développement - Le Best Of
    Réponses: 27
    Dernier message: 24/02/2003, 14h39

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