• [^] # Re: Netbeams vs Eclipse pour le C++

    Posté par . En réponse à la dépêche Sortie de Netbeans 6.0. Évalué à 5.

    Je l'utilise aussi pour du C++ et c'est vraiment royal. Cherchant un IDE C++ cross plateforme (au moins Linux et Windows), j'ai essayé pas mal d'outils avant de me fixer sur NetBeans :

    - KDevelop: Très bien foutu mais pas très adapté pour un projet basique. Le modèle par défaut de projet C++ utilise toute le tringlerie des autotools, trop lourd pour un projet de taille moyenne. Sinon il faut se taper les makefiles à la main. Il sera peut-être compilable sous Windows après le passage à KDE4 mais pour le moment c'est la croix et la bannière pour arriver à compiler toutes les dépendances avec Cygwin.

    - Anjuta: Même problème. Malgré que GTK soit disponible sous Windows, les auteurs d'Anjuta ne semblent pas intéressés et se focalisent sur l'intégration Gnome.

    - OpenLDev: Pas cross palteforme. Semble stagner.

    - CodeBlocks: Plutot orienté Windows, il tourne vraiment pas mal. La complétion automatique est perfectible. Il propose par défaut un tas de conneries trouvées dans les headers standards mais a beaucoup plus de mal à proposer des solutions venant des headers du projet. C'est un peu balot.
    Sinon, pour le reste c'est pas mal du tout. Les makefiles peuvent soit être gérés automatiquement, soit gérés à la main. La gestion des workspaces est un peu bizarre. Malgré le fait que je choisisse à chaque fois d'enregistrer le workspace, il semblene pas savoir ouvrir ses propres fichiers workspace. Sinon gros reproche : Dans les fichiers projets, tous les chemins sont stockés en absolu !!! Du coup si quelqu'un récupère un projet mais ne le met pas exactement dans le même path que l'auteur ça ne compile pas. J'espère qu'il y a moyen de changer ça mais je n'ai pas trouvé (on peut modifier les include en absolu/relatif mais il garde toujours le ROOT_DIR en absolu).

    - Geany: Là, c'est beaucoup plus basique (surtout la partie debugage) mais pour ce qui est juste de l'édition de code ça peut passer.

    - Eclipse: Autant pour Java, c'est le pied, autant pour le reste c'est l'horreur. La complétion automatique pour le C++ est quasi inexistante (ou alors complètement buggée), la gestion de projet est bordélique (édition de makefile antiergonomique au possible). Seul le débuggage est au niveau de ce qu'eclipse fait pour Java. Bref, pour moi c'est vraiment pas terrible. D'autant que le support du C++ dans Eclipse n'est vraiment pas nouveau et pourtant semble stagner.

    - NetBeans: Gros coup de coeur. Tout marche du premier coup, l'ergonomie proche de VisualStudio. La completion automatique est bluffante (au niveau de VS2005), la gestion de projet est simplissime (options du projet très simples à configurer, édition de makefile automatique ou customisable), le debugage est impeccable (évaluation à la volée de la variable sous le curseur, possibilité d'explorer un objet sous forme arborescente, point d'arrêts conditionnels,...). Franchement j'ai été impressioné.
    Deux petits reproches/bugs :
    * Parfois au lancements du débuggage il freeze.
    * On se retrouve par moment à éditer un fichier "virtuel" dont les changements ne sont pas pris en compte : Débugage, arrêt, modification de code, sauvegarde, recompile, re-debugage et ça ne marche pas ! Le fichier sur lequel on travaillait était en fait la version du fichier tel qu'il était lors du précédent débugage. La sauvegarde n'a pas été appliquée au fichier sur disque. Il suffit de réouvrir le fichier pour se rendre compte que les modifs n'ont pas été prises en compte. On a deux fois le même fichier ouvert, différent, sauf que seule une version est la "vraie" et il n'y a pas de warning là dessus.

    Enfin il est un peu lourd au démarrage. Je ne sais pas s'il est possible de le compiler "ahead of time" avec gcj mais ça aiderait beaucoup, je pense. Une fois lancé, il est très rapide.