Definition

Environnement de Développement Intégré (IDE)

Un environnement de développement intégré (IDE) est une suite logicielle qui regroupe les outils de base nécessaires pour écrire et tester des logiciels.

Les développeurs utilisent de nombreux outils tout au long de la création, de la construction et du test du code logiciel. Les outils de développement comprennent souvent des éditeurs de texte, des bibliothèques de code, des compilateurs et des plates-formes de test. Sans IDE, un développeur doit sélectionner, déployer, intégrer et gérer tous ces outils séparément. Un IDE rassemble un grand nombre de ces outils de développement sous la forme d'un cadre, d'une application ou d'un service unique. L'ensemble des outils intégrés est conçu pour simplifier le développement de logiciels et permet d'identifier et de minimiser les erreurs de codage et les fautes de frappe.

Certains IDE sont open source, tandis que d'autres sont des offres commerciales. Un IDE peut être une application autonome ou faire partie d'un ensemble plus vaste.

Caractéristiques communes des environnements de développement intégrés (IDE)

Un IDE contient généralement un éditeur de code, un compilateur ou un interprète et un débogueur, accessibles par une interface utilisateur graphique (GUI) unique. L'utilisateur écrit et modifie le code source dans l'éditeur de code. Le compilateur traduit le code source en un langage lisible et exécutable par un ordinateur. Enfin, le débogueur teste le logiciel pour résoudre les éventuels problèmes ou bogues.

Un IDE peut également contenir des fonctionnalités telles que des éditeurs programmables, la modélisation d'objets et de données, des tests unitaires, une bibliothèque de code source et des outils d'automatisation de la construction.

La barre d'outils d'un IDE ressemble beaucoup à la barre d'outils d'un traitement de texte. La barre d'outils facilite l'organisation par couleur, le formatage du code source, les diagnostics et rapports d'erreurs et la complétion intelligente du code. Grâce à l'interface d'un IDE, un développeur ou une équipe de développeurs peut compiler et exécuter le code de manière incrémentielle et gérer les modifications du code source de manière uniforme. Les IDE sont généralement conçus pour s'intégrer à des bibliothèques de contrôle de version tierces, telles que GitHub et Subversion d'Apache.

Un IDE peut prendre en charge le développement guidé par le modèle (MDD). Un développeur travaillant avec un IDE commence par un modèle, que l'IDE traduit en code approprié. L'IDE débogue et teste ensuite le code piloté par le modèle, avec un haut niveau d'automatisation. Une fois que la construction est réussie et correctement testée, elle peut être déployée pour d'autres tests par l'intermédiaire de l'IDE ou d'autres outils en dehors de l'IDE.

Avantages de l'utilisation des IDE

Un IDE peut améliorer la productivité des développeurs de logiciels grâce à une configuration rapide et à la standardisation des outils.

Sans IDE, les développeurs passent du temps à décider quels outils utiliser pour différentes tâches, à configurer les outils et à apprendre à les utiliser. Un grand nombre, voire la totalité, des outils de développement et de test nécessaires sont inclus dans un environnement de développement intégré.

Les IDE sont également conçus avec tous leurs outils sous une interface utilisateur unique. Un IDE peut normaliser le processus de développement en organisant les fonctionnalités nécessaires au développement de logiciels dans l'interface utilisateur.

Types d'IDE et outils disponibles

Les développeurs doivent faire correspondre l'IDE qu'ils utilisent au type d'application qu'ils souhaitent produire. Par exemple, si un développeur veut créer une application sur iOS, il a besoin d'un IDE qui prend en charge le langage de programmation Swift d'Apple. Les types d'IDE vont du web au cloud en passant par le mobile, le langage spécifique ou le multi-langage.

Les IDE basés sur le web conviennent au développement d'applications basées sur le web en HTML, JavaScript ou autres langages de programmation similaires. Visual Studio Code de Microsoft est un exemple d'IDE basé sur le web, avec des fonctionnalités telles qu'un éditeur de code, la coloration syntaxique, la complétion de code et le débogage.

De plus en plus, les IDE sont proposés sur un modèle de livraison de plateforme en tant que service (PaaS). Les avantages de ces IDE basés sur le cloud incluent l'accessibilité aux outils de développement logiciel depuis n'importe où dans le monde, à partir de n'importe quel appareil compatible ; des exigences de téléchargement et d'installation minimales, voire inexistantes ; et la facilité de collaboration entre des développeurs géographiquement dispersés. Cloud9 est un IDE d'AWS qui prend en charge jusqu'à 40 langages, dont C, C++, Python, Ruby et JavaScript. Cloud9 offre aux utilisateurs une complétion de code, un éditeur d'images et un débogueur, ainsi que d'autres fonctionnalités telles que la prise en charge du déploiement vers Microsoft Azure et Heroku (qui est un IDE PaaS basé sur le cloud).

Un IDE pour le développement mobile fonctionne normalement avec du code qui s'exécute sur des appareils iOS ou Android. Xamarin est un exemple d'IDE mobile multiplateforme, ce qui signifie qu'il peut créer du code pour plusieurs types de plateformes mobiles. Par exemple, un développeur peut écrire une fonctionnalité en C et Xamarin la traduit en Swift pour iOS et en Java pour Android. En outre, Xamarin propose des tests d'interface utilisateur et peut distribuer des tests bêta aux utilisateurs.

Les IDE tels que C-Free - qui comprend un éditeur de code, un débogueur et un environnement permettant d'exécuter du code C et C++ - sont spécifiques à chaque langue. D'autres IDE prennent en charge plusieurs langues, comme Cloud9 et Visual Studio Code, déjà mentionnés. Les outils IDE les plus populaires sont Netbeans, Eclipse et IntelliJ IDEA.

Cette définition a été mise à jour en août 2016

Pour approfondir sur Base de données