web-dev-qa-db-fra.com

Netbeans ou Eclipse pour C++?

Je travaille actuellement sur un projet pour animaux de compagnie et je dois développer C++ sous Windows, Mac, Linux et Solaris. Je l'ai réduit à Netbeans et à Eclipse. Je suis donc émerveillé de savoir qu'il est plus solide en tant qu'éditeur C++. J'ai juste besoin d'une édition solide, d'une bonne complétion automatique pour les bibliothèques externes de code et de modèles, ainsi que de la gestion de projet, les outils de construction sont externes, ce qui est hors de propos ici, à des fins de comparaison.

Ainsi quel est le meilleur choix?

Remarque: je sais que je devrais utiliser emacs ou vim, mais le problème, c’est ma théorie du moins, que je suis gaucher, c’est pourquoi j’utilise mon côté droit (conception, créativité) du cerveau plus que le côté gauche (logique). , mémoire), donc je ne peux tout simplement pas utiliser emacs ou vim, mon cerveau n’est tout simplement pas compatible, je les ai essayés plusieurs fois, j’ai même utilisé emacs pendant quelques mois, mais cela m’a rendu fou ...

Merci

35
Robert Gould

Je n'ai pas utilisé NetBeans, mais Eclipse CDT (outils de développement C, qui inclut C++), en particulier avec la dernière version, est vraiment tout à fait excellent:

  • Vérification de la syntaxe et de l'orthographe
  • La mise en évidence de la syntaxe fait la distinction entre les appels de bibliothèque et vos appels de fonction, ainsi qu’entre les variables locales et les variables membres, et s’applique même à du code # ifdef'ed out
  • Expansion de macros pouvant vous guider à travers chaque niveau d’application de macros ou afficher le résultat final, même de macros très complexes de préprocesseurs Boost
  • Une vue d'ensemble de fichier et de classe qui se met à jour dynamiquement pour indiquer où vous vous trouvez dans un fichier. (Les IDE commerciaux que j'ai utilisés échouent.)
  • Fonctions puissantes et flexibles de recherche/remplacement et de recherche dans les fichiers avec prise en charge complète des expressions rationnelles de style Perl. Il est également supposé pouvoir effectuer une recherche C/C++ dans des fichiers pouvant effectuer une recherche en fonction de la sémantique du langage (par exemple, rechercher uniquement des références, pas des déclarations), bien que cela ne fonctionne parfois pas pour moi.
  • Suivi automatique de TODO et d'autres balises de commentaire
  • Astuces de passage de la souris qui affichent la déclaration exacte d’une variable ou d’une fonction, y compris les commentaires, au lieu d’indiquer simplement où une variable ou une fonction est déclarée. (Encore une fois, les IDE commerciaux que j'ai utilisés échouent.)
  • Support via des plugins pour Subversion, Doxygen, etc.
  • Certains supports de refactoring - renommer, extraire une constante, extraire une fonction, quelques autres
  • Reformater le code, basé sur des styles de code définis par l'utilisateur

Vous avez demandé spécifiquement à propos de son éditeur; l'éditeur Eclipse est suffisamment bon pour que je l'utilise de préférence à la version commerciale IDE de notre produit lorsque je n'ai pas besoin du concepteur de formulaires commercial de l'IDE.

L'intégration du débogueur Eclipse (à l'aide de gdb) est tolérable, mais elle n'est pas excellente et son utilisation de la mémoire est importante. Quelques fonctionnalités (comme la recherche dans les fichiers C/C++) ne fonctionnent pas correctement ou nécessitent une réindexation (ce qui prend du temps) sans raison apparente, mais la dernière version semble plus fiable à cet égard.

Quelqu'un qui a utilisé NetBeans peut-il indiquer comment il se compare?

25
Josh Kelley

J'utilise Netbeans de temps en temps sur Solaris et la dernière version (6.5) est très soignée. Il possède toutes les fonctionnalités dont vous avez besoin, peut-être que l'auto-complétion pourrait fonctionner mieux, mais j'ai une base de code vraiment mauvaise, ce qui pourrait en être le résultat. N'oubliez pas que vous avez besoin d'une machine puissante pour cela. Si c'est votre PC, c'est ok, mais Netbeans sur un serveur distant (comme je l'ai essayé) est très lent, sauf si vous avez un matériel correct. Il existe peu de refactorings simples pour C++ avec l'option de prévisualisation de Nice, qui vaut vraiment la peine d'être essayé.

Vous pouvez obtenir un pack Sun C++ complet à partir d'ici: http://developers.Sun.com/sunstudio/downloads/express/

16
Nazgob

Personnellement, je préfère NetBeans - la gestion de projet est excellente et je fonctionnais plus rapidement qu'avec Eclipse. Cependant, il est subjectif et YMMV.

12
Rob

Ils sont à la fois gonflés et lents, à mon humble avis. Pourquoi n'essayez-vous pas Code :: Blocks à la place? Il est spécifiquement destiné aux développeurs C++ et fonctionne beaucoup mieux qu'Eclipse ou NetBeans.

11
Nemanja Trifunovic

Juste pour donner 2 cents aux commentaires sur les problèmes de vitesse ou de performance avec Eclipse/netbeans:

La seule partie d'un IDE qui pèche si elle est lente est le composant éditeur . Et contrairement à certaines assertions manifestement superficielles ici, j'ai trouvé le composant éditeur Dans Eclipse extrêmement accrocheur. Le reste de IDE est sujet aux retards, Mais l'éditeur lui-même offre des performances sans faille . J'ai un ordinateur portable à 1,4 GHz et j'utilise Eclipse avec. Le composant éditeur d'Eclipse est plus rapide (Code :: Blocks ou KDevelop, en particulier lors du défilement/de la navigation dans le texte). La raison en est simple: Eclipse met tout en cache, en particulier la coloration syntaxique, etc., d’autres IDE semblent essayer de le faire «en direct» et échouent… .. L’indexeur c ++ était une cause de problèmes dans les versions antérieures. Il se bloquait lorsqu'il manquait de mémoire, aucune des fonctions de recherche astucieuses ne fonctionnait, etc. Pour la version actuelle, je ne peux que dire: tout est réglé et cela fonctionne à merveille ... La vitesse est comparable à l'indexeur VisualStudio.

Si vous installez Eclipse CDT, vous obtenez une tonne de fonctionnalités Nice, comme cela a déjà été expliqué dans d'autres réponses, que la plupart des autres IDE fournissent uniquement avec plusieurs plugins. (Je ne sais pas à propos de netbeans, je ne l'ai jamais utilisé.) La fonctionnalité qui me frappe le plus souvent est l'info-bulle intelligente lorsque je survole un identifiant. Eclipse me donne un accès direct à n'importe quel javadoc qui pourrait être entré quelque part et au fichier dans lequel il est défini et me permet même de faire défiler les informations dans l'info-bulle! J'ai donc tous les identifiants un contexte complet à portée de main, partout… .. Je le préfère à Visual Studio et à peu près tout ce que j'ai essayé.

Certes, tout ce que vous faites dans IDE pourrait être plus vif. Pour moi, l’essentiel est que l’éditeur soit rapide et qu’Eclipse fasse du très bon travail là-bas.

6
AndreasT

La seule chose que je déteste chez Netbeans, c'est que le débogueur est un peu lent par rapport à Eclipse. En plus de cela, Netbeans serait mon choix.

3
Geo

Si vous exécutez Eclipse sous Linux, vous pouvez utiliser valgrind pour les fuites de mémoire. Eclipse supporte assez bien gdb pour moi, mais je ne pouvais pas trouver un plug-in de fuite de mémoire décent, et le plug-in d'intégration Valgrind est en version bêta. Ce blog est un excellent tutoriel pour cela: http://kapo-cpp.blogspot.com/2007/02/detecting-memory-leak.html . Je vote pour Eclipse sur Linux. P.S Les vrais hommes utilisaient seulement ed. 

3
darkhipo

L'analyseur c ++ de code :: blocks ne semble pas être à égalité avec les netbeans et ceux d'Eclipse: selon le code wiki , il doit être entièrement réécrit.

2
Johan Boulé

Je suis un grand fan d'Eclipse et je l'ai beaucoup utilisé pour la programmation Java et C++. Cependant, actuellement, il ne prend pas en charge le développement C++ distant. J'ai essayé le développement Netbeans Remote C++ et je l'ai trouvé plutôt excellent et extrêmement simple. Cela dit, l'analyse C++ n'est pas aussi fluide qu'Eclipse, l'auto-complétion gêne parfois et ne s'en va pas, et le plus gros problème que j'ai eu est le besoin constant de redémarrer le IDE dû à la performance très lente. J'espère qu'Eclipse pourra continuer à développer ses capacités de développement en C++ distant et à utiliser Netbeans pour illustrer comment rendre cela très simple!

1
ossys

Ils sont tous deux excellents pour le développement C++, mais l’un des problèmes récemment constatés dans NetBeans est qu’il ne semble pas y avoir de plug-in disponible pour CppUnit ni aucun autre framework de test unitaire C++. J'aimerais avoir plus de réponses à cette question si je me trompe à ce sujet.

(En outre, je sais que le développement est toujours en cours pour NetBeans, alors peut-être que quelqu'un proposera bientôt un plugin.)

1
Bill the Lizard

Pour C++, je suis d’accord avec Nemanja Trifunovic et dis que vous devriez regarder Code :: Blocks . C'est gratuit et offre d'excellentes performances. J'ai commencé à l'utiliser il y a quelques années après être passé de Bloodshed Dev-C++ (qui n'est plus supporté en principe) et je ne pouvais pas être plus heureux. 

1
h0st1le

J'utilise Net Beans jusqu'à présent. Mais j'ai été obligé de passer à Eclipse à cause de problèmes dans NetBeans. Il existe un bogue Net Beans qui rend le IDE inutile lorsque vous travaillez avec des projets contenant une grande quantité de fichiers source. Beaucoup de gens se sont plaints, mais il semble que l'équipe Net Beans n'a pas été en mesure de résoudre le problème qui empêche le IDE de répondre lorsqu'il analyse les fichiers source. :(

Signalé dans: Petr Dvorak - Blog Oracle

En guise de solution, ils proposent un mécanisme d’analyse à la demande qui ne fonctionne pas pour moi: ( Wiki Net Beans

0
Sampath

ayant utilisé Eclipse pendant un certain temps, j’ai récemment jeté un coup d’œil à Netbeans et je dois dire que j’aime beaucoup. à la fin de la journée, ce sont deux excellents ides et c’est un choix très subjectif… .. à mon avis, Netbeans semble être un peu plus rapide que Eclipse, mais cela pourrait être un sentiment.

0
fly.floh