web-dev-qa-db-fra.com

Comparaison des IDE pour le développement C ++ et C sous Linux: KDevelop, Eclipse, NetBeans, CodeBlocks et Anjuta

J'aimerais noter votre expérience des IDE à grande échelle sur Linux.

Personnellement, je travaille principalement avec vim, mais d'autres programmeurs aimeraient voir un véritable IDE. J'aimerais donc entendre votre opinion personnelle sur les différents IDE et leur comparaison, dans le contexte suivant:

  • C++ et peut-être du développement C (pas Java, Python et autres))
  • Programmation côté serveur (pas besoin de développement d'interface graphique)
  • Travailler sur Linux et non sur un développement "multiplateforme".

Avis nécessaire concernant:

  1. Est-il stable? Si IDE plante, je n'en ai pas besoin.
  2. Confortable à utiliser.
  3. Puissant pour le débogage.
  4. Intégration avec divers systèmes de construction
  5. Évolutivité sur de grands projets (projets de centaines de milliers de lignes de code)

J'avais l'habitude de travailler avec KDevelop et c'était très agréable IDE et il semble que KDevelop 4 soit un énorme progrès. Il semble aussi que beaucoup utilisent plutôt Netbeans et Eclipse.

49
Artyom

Voici mon expérience personnelle avec les IDE. J'ai installé tous les IDE que j'ai pu trouver et joué avec tous (c'est ce que je vous conseille de faire):

  • kdevelop

Je l'utilise personnellement. La version que j'ai installée plante, mais j'ai téléchargé la dernière version sur leur site, et cela fonctionne bien. Il est simple à configurer et à utiliser. Ils prennent en charge le système de construction personnalisé via des plug-ins. Vous pouvez trouver des fonctionnalités étranges (comme l'analyse uniquement les en-têtes directement inclus), mais généralement cela fonctionne bien pour les grands projets.

  • Éclipse

Super complexe à configurer, mais il permet littéralement tout. Si vous avez suffisamment de temps pour trouver une configuration correcte qui plaît à tout le monde, alors allez-y. Mais essayer de changer quoi que ce soit est très ennuyeux car il a tellement d'options.

  • anjuta et codesblocks

Je l'ai essayé peu de temps et ce n'était pas aussi bon que les deux précédents. Codeblocks est bon pour les projets courts, mais pas pour les moyennes et grandes.

  • netbeans

Un autre bon IDE, mais comme ma maison est en partage réseau et que le projet sur lequel je travaille est assez grand, il a été très lent. Il analyse tout le temps.

  • qtcreator

Simple à configurer, mais il manque de nombreuses options. Par exemple, la chose la plus étrange avec elle est qu'elle ne peut pas analyser et compléter automatiquement les classes qt. Prend en charge le système de construction personnalisé.


De conclure :

  • si vous êtes assez patient (ou si vous trouvez une bonne configuration), optez pour Eclipse. C'est vraiment le meilleur IDE gratuit.
  • Si vous voulez quelque chose de simple à configurer, rendez-vous avec kdevelop.

Une autre option consiste à installer les deux et à laisser vos développeurs choisir ce qui leur convient le mieux.

40
BЈовић

Jetez un œil à Qt Creator.

  • C'est assez stable. Je ne me souviens d'aucun crash avec.
  • Cela peut prendre un certain temps pour s'habituer à l'absence d'onglets mais l'interface globale est bonne.
  • Il utilise gdb. Le débogage n'est pas aussi efficace que dans Visual Studio, mais reste assez bon. Il s'intègre également avec le profileur (Valgrind) maintenant.
  • Il s'intègre à qmake et CMake. Mais vous pouvez exécuter des commandes personnalisées, il devrait donc être possible d'utiliser presque tout.
  • Je ne peux rien dire sur les projets énormes mais il est fait et utilisé par les mêmes gars qui écrivent Qt donc les exigences sont élevées.
  • Il ne semble pas faire d'hypothèses sur la structure du projet.

J'ai essayé KDevelop 4 il y a quelque temps. Il va certainement dans la bonne direction mais légèrement buggé. Vous voudrez peut-être essayer de toute façon.

J'ai utilisé CodeBlocks pendant très peu de temps mais je me souviens que je ne l'aimais pas car Interface était moche.

13
Anton Barkovsky

De nombreux développeurs GCC (et GCC possède de 5 à 9 millions de lignes de code source, selon la façon dont vous les comptez) utilisent simplement emacs ou vi avec des utilitaires comme grep, ctags ou etags, make, svn, gcc, etc.).

Vous n'avez pas besoin d'un IDE pour développer un gros logiciel.

Si votre logiciel est assez gros (par exemple au moins 0,3 million de lignes), vous pouvez même envisager de personnaliser les plug-ins GCC ou MELT extensions, à des fins de métriques logicielles, navigation logicielle, avertissements spécifiques, règles de codage, etc.

8

Je travaille principalement avec Eclipse. J'ai utilisé KDevelop avec une grande satisfaction pendant des années, mais maintenant je travaille sur des projets multilingues (C, C++, PHP, Java, Python, Database, Web, etc.).

Avantages d'Eclipse: beaucoup d'outils pour tout (y compris le contrôle de version); fonctionne très bien pour la vérification de la syntaxe et l'auto-complétion. Bon travail lors de la compilation/construction/débogage. Il est multi-plateforme (Linux, Windows, Solaris, etc.)
Inconvénients: certaines fonctions ou certains paramètres sont un cauchemar (par exemple, lorsque vous devez déployer le projet de votre poste de travail vers le serveur, Eclipse conserve une sorte de cache, et s'il pense que le fichier sur le serveur est 'à jour', le fichier n'est pas écrasé). Eclipse est énorme , étouffe la plupart de votre CPU-Power et vide toute votre mémoire. Plus d'informations sur http://www.ihateeclipse.com .

KDevelop est rapide et idéal pour les projets C/C++ et KDE/Qt, mais manque de certaines fonctions comme la prise en charge de Mercurial (KDevelop 3.3.4, je ne sais pas pour les versions plus récentes).

7
AndrewQ

Netbeans est un IDE lent, lent. Nous n'utilisons pas d '"ordinateurs de dinosaures", mais cela IDE HANGS pendant un temps assez long. Si nous accédons aux Netbeans IDE via le réseau (disons, en utilisant VNC), alors oubliez ça !!! Le décalage est si mauvais qu'il rend les Netbeans inutilisables!

Je trouve qu'Eclipse est intimidement difficile à configurer pour une utilisation initiale, mais si vous persévérez, vous vous retrouverez avec un IDE qui a tout ce dont vous pourriez avoir besoin ou besoin (éventuellement par le biais de plug-ins) .

Je ne veux pas utiliser plus d'un IDE, et je soupçonne que vous non plus. Je recommanderais Eclipse, avec tous ses défauts.

5
Mike

Visual SlickEdit - commercial, comme tout bon outil, "fonctionne tout simplement". Gère toutes les langues sous le soleil, hors de la boîte, hautement configurable et si nécessaire, entièrement programmable, met un GUI autour de GDB pour le débogage. Gère de très grands projets (je l'utilise pour une base de code de 5 millions + SOLC, dont je joue avec environ 1 million d'entre eux.) - A remporté de nombreux prix en arrière et s'est amélioré depuis lors. Essayez-le

Eclipse - Outil de choix lors de la programmation en Java, OK pour tout langage unique pris en charge. Écrit en Java pour Java développant des programmes Java. Mais il a besoin de plugins pour chaque petite fonctionnalité et fonctionnalité principale). pas "simplement travailler" pour plus d'une langue à la fois.

4
mattnz

Donc ... j'ajoute juste une autre opinion mais je ne pense pas que vous puissiez le choisir en tant qu'utilisateur Vim, donc

emacs + gdb http://www.cs.bu.edu/teaching/tool/emacs/programming/

tout d'abord ce sera le plus léger [~ # ~] ide [~ # ~] (je peux même l'appeler système d'exploitation) et le plus personnalisable pour que vous peut tout faire avec une utilisation minimale des ressources, à l'exception de certaines ressources de réflexion de configuration LISP.

Personnellement, lorsque j'ai un projet sérieux, j'utilise Visual Studio. Mais quand j'ai besoin de travailler sur Linux, je lance emacs. (aussi je n'aime pas du tout qt)

Aussi (principalement parce que j'aime le plugin last.fm et le support de clojure là-bas), j'ai trouvé un Nice IDE pour linux (essayant toujours de passer à emacs depuis == 'pour certaines raisons) [~ # ~] idée [~ # ~] , je ne recommande pas de l'utiliser pour C++ mais peut-être que ce n'est pas mal non plus, vous pouvez donc l'ajouter à votre liste.

4
cnd

QT et CodeBlocks sont ok. J'utilise CodeBlocks récemment.

Il peut être configuré pour les projets de makefile, la complétion de code fonctionne principalement et ne se bloque pas comme dans MSVS, la définition est extrêmement rapide. La navigation dans les fonctions est également bien faite.

Il y a quelques problèmes mineurs, mais pour le travail quotidien sur Linux, c'est très bien, à mon humble avis.

1
Coder

Ma seule tentative d'utiliser un IDE sur Linux est arrivée en 2005, mais à ce moment-là non IDE j'ai essayé (KDevelop, Eclipse, Anjuta) était bon, donc je suis retourné à vim + ctags + gdb et je l'utilise toujours pour le codage Linux.

0
Nemanja Trifunovic