- Integrated Development Environment
-
Environnement de développement intégré
Un environnement de développement intégré (EDI ou IDE en anglais pour Integrated Development Environment) est un programme regroupant un ensemble d'outils pour le développement de logiciels. En règle générale, un EDI regroupe un éditeur de texte, un compilateur, des outils automatiques de fabrication, et souvent un débogueur. Bien que des EDI pour plusieurs langages existent, bien souvent (surtout dans les produits commerciaux) un EDI est dédié à un seul langage de programmation. On peut également trouver dans un EDI un système de gestion de versions et différents outils pour faciliter la création de l'interface graphique (GUI en anglais pour Graphical User Interface).
Historique
Un EDI est seulement concevable quand le développement est fait assis devant une sorte de console d'ordinateur. Donc beaucoup de « vieux » langages n'en ont pas eu, car le développement était fait avec des organigrammes, des formulaires de codification et des cartes perforées soumises à l'ordinateur. Le premier langage qui a été créé avec un EDI fut le Dartmouth BASIC en 1964, le premier langage conçu pour être utilisé devant un terminal d'ordinateur. Cet EDI était basé sur des commandes, contrairement aux EDI modernes qu'on utilise par menus.
Dans le cas des langages qui avaient vu le jour avec le vieux système de développement sur cartes perforées, les EDI avaient été conçus comme une interface graphique au système de construction de programme par makefile, aussi les fichiers de configuration furent ajoutés. Les makefiles décrivent les options pour la construction du programme, on peut considérer leur syntaxe comme un langage à part entière tant les possibilités de ces outils sont grandes (ils permettent par exemple d'ajouter des structures de contrôles aux instructions de compilations ou d'édition de liens). Les EDI contrôlent maintenant ces outils, depuis des fenêtres graphiques, évitant ainsi aux programmeurs débutants d'être en plus confronté à la rugueuse et exigeante syntaxe du Makefile.
Fonctionnalités
Voici une liste non exhaustive des outils qui composent le plus souvent les EDI :
- un éditeur de texte : les EDI s'articulent souvent autour d'un éditeur de texte, qui intègre lui-même de nombreuses fonctionnalités pour assister le développeur, telles que la coloration syntaxique, le complètement automatique ou l'indentation automatique.
- un compilateur (dans le cas des langages compilés) : certains EDI intègrent leur propre compilateur, tandis que d'autres se contentent de servir d'interface pour l'utilisation d'un compilateur externe, tel que GCC ou javac.
- un interprète (dans le cas des langages interprétés).
- un débogueur.
Mais selon les langages et les systèmes, on peut aussi trouver de nombreux autres outils :
- assistant au développement d'interface graphique,
- accès direct à la documentation du langage,
- interface de gestion de versions,
- génération automatique de code source,
- modélisation UML,
- ...
Par ailleurs, certains EDI proposent une autre approche de la programmation : la programmation visuelle (de l'anglais Visual programming). Les programmes y sont écrits en assemblant des éléments graphiques.
EDI connus
Chez Microsoft, il y a la série des Visual (Visual Studio) dans laquelle plusieurs produits sont disponibles : Visual Basic, Visual C++.
Chez Borland, on a des EDI issus du Turbo Pascal (déjà un EDI sous DOS) pour le langage Pascal. Delphi est l'EDI pour l'environnement Windows et Kylix est l'EDI pour l'environnement Linux. Moyennant quelques précautions, le code pour l'un des environnements est compilable sous l'autre.
MORFIK propose Morfik WebOS AppsBuilder qui permet de créer des applications soit destinées au Web, soit destinées aux PC, ceci dans un langage, au choix, C#, Java, Basic ou Pascal.
PC Soft propose pour sa part WinDev pour créer des applications destinées au PC, WebDev pour créer des applications Internet et WinDev Mobile pour créer des applications pour Pocket PC et SmartPhone. Ces EDI partagent le même code source et les mêmes concepts.
4e Dimension constitue une plateforme de développement et de génération de solutions applicatives, et propose un langage de programmation de haut niveau. Ses fonctionnalités dépassent la simple gestion de données : génération d'applications, environnement mono-poste et client-serveur, développement et déployement multi-plateforme (Mac OS et Windows), Serveur Web, intégration des Web Services, de XML, ouverture vers Oracle, SQL, interaction avec les applications Ajax, Web 2.0.
La suite bureautique OpenOffice.org dispose également d'un EDI permettant la création de scripts dans différents langages (BASIC, Python, BeanShell ou encore JavaScript), pour manipuler les composants du logiciel à travers l'interface de programmation (API) fournie.
Sous l'environnement Linux, beaucoup de programmeurs utilisent encore le système des makefiles et leurs dérivés. Ces outils en ligne de commande sont considérés par beaucoup comme un EDI, pensés avec un style différent d'interface. Similairement, des programmeurs utilisent Emacs qui intègre beaucoup d'outils standards de construction de programme.
Dans le style des EDI précédemment cités, il y a Kdevelop, un nouvel EDI provenant du projet KDE basé sur les outils de développement GNU (GNU Compiler Collection, GNU Make, et GNU Debugger), et incluant un outil graphique de création de fenêtres, OMNIS ou encore Anjuta pour l’environnement GNOME.
Pour le langage Java, il existe plusieurs EDI qui lui sont spécialement dédiés :
Dans le monde du logiciel libre on trouve également :
- Eclipse. Le cas d'Eclipse est particulier : de par sa modularité, il n'est pas exclusivement dédié à Java, on peut par exemple développer en C, C++, en PHP, Perl, Ruby, HTML ou encore en Python, l'installation de plug-ins étant requise pour cela.
- Geany qui est un IDE à la fois léger et rapide qui a été créé dans le but d'être le plus indépendant possible des environnements graphiques tels ques GNOME ou KDE. Il supporte également plusieurs types de fichiers: C, Java, Python, PHP, HTML, Perl, etc.
- Autre IDE, Code::Blocks, cette fois-ci pour le C et le C++. Il est également construit autour d'une architecture de plug-ins et permet également de programmer en langage D.
- DrScheme : alors qu'une majorité des EDI est destinée à un usage professionnel, DrScheme est à l'origine développé dans un but pédagogique. Développé à l'Université Rice, cet EDI pour le langage Scheme permet entre autres de ne travailler que sur un sous-ensemble du langage, pour permettre aux étudiants de le découvrir progressivement. Il offre de plus des messages d'erreur plus compréhensibles pour les débutants.
Parmi les EDI proposant une programmation visuelle, on peut citer SCADE (basé sur la langage Lustre), SCS (pour le langage Scol)...
- Portail de l’informatique
- Portail de la programmation informatique
Catégorie : Environnement de développement intégré
Wikimedia Foundation. 2010.