« Environnement de développement » : différence entre les versions

Un article de Wikipédia, l'encyclopédie libre.
Contenu supprimé Contenu ajouté
correction d'une modification suspecte
Rezabot (discuter | contributions)
Ligne 105 : Ligne 105 :
[[eo:IDE (komputilo)]]
[[eo:IDE (komputilo)]]
[[es:Entorno de desarrollo integrado]]
[[es:Entorno de desarrollo integrado]]
[[fa:محیط یکپارچه توسعه‌ نرم‌افزار]]
[[fa:محیط یکپارچه توسعه نرم‌افزار]]
[[fi:Ohjelmointiympäristö]]
[[fi:Ohjelmointiympäristö]]
[[he:סביבת פיתוח משולבת]]
[[he:סביבת פיתוח משולבת]]

Version du 1 mars 2013 à 03:33

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).

Les EDI ne doivent pas être confondus avec les frameworks : ils ont vocation à fournir un environnement de travail convivial et intégré (l'atelier) facilitant la mise en œuvre des bibliothèques logicielles (l'outil proprement dit) offertes par les frameworks.

Historique

Beaucoup d'anciens langages n'ont pas eu d'EDI associé, car les développements étaient fait via des organigrammes, des formulaires de codification et des cartes perforées soumises à l'ordinateur. Les EDI sont donc apparus avec les développements « sur console ».

Le premier langage créé — et livré — avec un EDI fut ainsi le Dartmouth BASIC en 1964, premier langage conçu pour être utilisé devant un terminal d'ordinateur. Son EDI était basé sur des commandes saisies « en ligne » : Pour de tels langages, les EDI consistaient en une interface graphique sommaire, assortie à un système de construction (compilation et édition de liens) de programme « par makefile » : les makefiles permettent de décrire les options de compilation et édition voulues pour la construction du programme. La syntaxe de plus en plus évoluée de ces makefiles a abouti à des pseudo-langages de plus en plus complexes et rébarbatifs, tant leurs possibilités se sont étendues (ils permettent par exemple d'ajouter des structures de contrôles aux instructions de compilations ou d'édition de liens), conduisant à la mise en place de fichiers de configuration pour décrire et persister ces options et automatiser leurs enchaînements.

Les EDI récents sont conçus pour des interfaces plus évoluées : menus, boutons, utilisation combinée clavier/souris, etc. Ils masquent et contrôlent les commandes techniques sous-jacentes depuis des IHM graphiques, évitant ainsi aux programmeurs débutants d'être confrontés à la rugueuse et exigeante syntaxe du makefile.

Fonctionnalités

Voici une liste non exhaustive des outils qui composent le plus souvent les EDI :

Mais selon les langages et les systèmes, on peut aussi trouver de nombreux autres outils :

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.

Principaux EDI

EDI généralistes

Certains EDI sont conçus pour supporter plusieurs technologies ou sont livrés avec une API qui permet à des développeurs tiers d'écrire des modules additionnels (plug-in) pour étendre les fonctionnalités initiales.

  • Eclipse est originellement un environnement dédié à Java, ses extensions permettent de développer avec un très grand nombre de langages et technologies (C++, Qt, modélisation UML, PHP, ...)
  • Kdevelop, environnement de développement du projet KDE, et initialement dédié à C++ et Qt, peut maintenant gérer Java, Pascal, PHP, Perl, Python, Ruby et d'autres technologies
  • Microsoft Visual Studio supportait à l'origine C++ et Visual Basic, puis est devenu l'environnement de référence de la plateforme .Net, il est également modulaire. Une version gratuite allégée dénommée "Visual Studio Express" existe aussi.
  • NetBeans, développé par Sun Microsystems a suivi le même chemin, le paquetage officiel inclut en plus des technologies Java (Java SE, Java EE, Java FX,...) le support de C++, Ruby et PHP
  • phpDesigner, orienté résolument utilisateur, gère tous les langages Internet reconnus, et regroupe en natif tous les outils de développement Internet réputé : html Tidy, phpDocumentor, XDebug, SVN, etc.

EDI spécialisés

Embarcadero (CodeGear) développe deux EDI : C++ Builder pour le langage C++, et Delphi pour le Pascal Objet. Lazarus est un EDI libre similaire à Delphi et développé par une équipe de bénévoles.

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, SmartPhone, Iphone, tablette Android et Ipad. 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éploiement 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.

Un peu à part, Veler Software[1] propose le logiciel SoftwareZator qui est un EDI ayant la particularité de créer des logiciels pour Windows sans programmer. L'éditeur de code traditionnel est remplacé par un éditeur d'actions à remplir dans les fonctions créées par l'utilisateur basé sur le Glisser déposer. Ce logiciel serait, selon son éditeur, le premier proposant ce fonctionnement.

Peu après l'échec de CodeGeaX, Xtend Corporation[2] propose le logiciel Code::Blocks qui est un EDI ayant la particularité de créer des logiciels pour Windows avec le langage C++, Java, Jaxel le propre langage de Xtend. CodeBlocks permet de créer des logiciel mobile à partir du langage C++ ou Net pour créer des logiciels pour Android ou iOS

Pour le langage Java, il existe plusieurs EDI qui lui sont spécialement dédiés :

Dans le monde du logiciel libre et des EDI non dédiés, on trouve également :

  • 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 que GNOME ou KDE. Il supporte également plusieurs types de fichiers : C, 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.
  • BlueJ : Cet IDE multiplate-forme a été pensé dès le début dans un but pédagogique. Développé à l'Université de Kent, cet EDI pour le langage Java est conçu pour les débutants en programmation qui commencent avec Java.
  • DrRacket : alors qu'une majorité des EDI est destinée à un usage professionnel, DrRacket 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 le langage Lustre), SCS (pour le langage Scol)…

Voir aussi

Articles connexes

Notes et références

  1. (fr) « Site officiel de Veler Software » (consulté le )
  2. (fr) « Site officiel de Xtend Corporation » (consulté le )