EDI (ou IDE), fonctions et liste
Environnement de Développement Intégré, ou IDE (Integrated Development Environment) doté d'une interface utilisateur graphique. C'est un outil pour faciliter la tâche du programmeur dans la réalisation d'applications ou l'écriture de scripts.
Un EDI comporte au moins:
- Une interface graphique.
Elle permet notamment de sélectionner les fichiers, définir les options, lancer les opérations. - Un éditeur de code source avec coloration syntaxique.
- La configuration d'un compilateur.
- D'un éditeur de liens.
- Un constructeur (outil make intégré). Il passe les commandes au compilateur et à l'éditeur de lien avec les fichiers sources ou les modules objets en paramètres.
- Un outil de déboguage.
En option on peut aussi avoir:
- Le support de plusieurs langages.
- Un détecteur d'erreurs de syntaxe.
- L'auto-complétion de code.
- Des plugins.
- Un outil de construction visuelle d'interfaces avec copier et coller de widgets.
- La navigation dans les classes.
Les EDI peuvent être dédiés à un langage de programmation ou être multi-langages. Dans le second cas l'éditeur adapte la coloration syntaxique au langage, en fonction de l'extension des fichiers ou du choix de l'utilisateur.
l'EDI Netbeans s'apparente à un simple éditeur de code avec la liste des fichiers source à gauche et la fenêtre d'édition à droite, mais il est en fait bien plus élaboré. Il dispose d'un testeur de syntaxe intégré pour les langages supportés qui détecte les erreurs, permet de cacher le corps d'une fonction pour alléger l'affichage, peut s'interfacer à une base de données pour exécuter le code à tester.
Et comporte bien sûr les outils de développement classiques...
Pour automatiser encore la production d'application, d'autres outils peuvent être incorporés à un EDI:
- Panel d'arborescence des classes et leur membres. Elle permet d'accéder facilement aux éléments d'un programme.
- Concepteur visuel. En choisissant des composants graphiques dans des barres, on crée une interface par glisser-déposer.
- Aide contextuelle. Fournit la fonction et le mode d'utilisation de chaque élément que l'on désigne.
- Gestionnaire de version. Maintient les versions successives du code source.
- Profileur. Aide à optimiser le code et améliorer ses performances.
Les éditeurs de texte modernes comme Bracket, Visual Studio Code, disposent outre la coloration syntaxique, de fonctionnalités étendues comme l'auto-complétion, la correction de syntaxe. Cela s'impose donc aussi dans une EDI.
Liste des EDIs gratuits
Ce sont tous des outils multi-langages. Pour les outils spécialisés, voir à chaque langage dans la page d'accueil de ce dossier programmation.
- Visual Studio Community
C++, C#, Basic, HTML 5. Devenu gratuit en 2014.
Pour Windows. - Eclipse.
Logiciel en Java, plateforme de développement multi-langages intégrant les mêmes outils. Vous pouvez ajouter vos propres outils.
C'est un logiciel difficile à appréhender et peu apprécié. On se plaint notamment des plugins instables, la lenteur, et la difficulté à accéder aux composants. Ses avantages sont une bonne gestion de SVN et CVS, une large gamme de langages supportés. - KDevelop.
Un EDI dédié principalement aux applications en C++ mais qui supporte aussi d'autres langages dont OpenCL.
Pour Linux et Windows. - IntelliJ IDEA.
La Community Edition est gratuite. Il se distingue par son fond gris par défaut, réalise des applications Java et HTML 5 pour le bureau ou pour Android en version CE, et d'autres langages pour la version pro. Bon debogueur, support pour le refactoring.
Pour Windows/Mac/Linux. - Aptana Studio.
Pour réaliser des Applications Web avec HTML 5, PHP, Ruby.Automatisation de la mise en ligne et support de Git.
Pour Windows. - Light Table.
Un éditeur évolué (basé sur CodeMirror et Node) qui intègre un moteur de rendu HTML (NWJS ex-Node-Webkit) et une sorte de serveur interne. Il est prévu pour les langages dynamiques comme ClojureScript, JavaScript, Python et peut être complété de plugins pour d'autres langages. Il permet l'évaluation de code et la connexion à un utilisateur virtuel pour tester le code et le modifier en cours d'exécution. L'intégration du navigateur permet de voir le résultat des modifications sans recharger la page ce qui est idéal pour un projet Node.js.
Pour Windows/Linux/Mac. - Net Beans.
Applications Java, PHP, C++. Dispose d'un correcteur de syntaxe, l'accès aux fichiers source n'apparait qu'au besoin et libère l'écran autrement. Maven intégré pour la gestion de projet. Il convient bien pour les applications Web.
Support pour Git, CVS, SVN.
Pour Windows/Mac/Linux.