Comment configurer un environnement de développement intégré (IDE)

Si vous passez des didacticiels en ligne à la création de vos propres projets, vous pourriez être dépassé par l'idée de mettre en place votre propre environnement de développement intégré (IDE), ou vous demander pourquoi vous en avez même besoin pour faire votre travail.

Dans cet article, je vais discuter de ce que l'IDE est et vous donner quelques idées sur ce que pourrait ressembler à vous, surtout si vous travaillez en JavaScript, bien que les informations seront applicables quelle que soit la langue ou le type de projet.

Voici une version vidéo de cet article si vous préférez (montre de 28 minutes):

Qu'est-ce qu'un environnement de développement intégré?

Un environnement de développement intégré, en termes simples, est tout ce dont un programmeur a besoin pour faire son travail. La composition réelle d'un IDE variera selon les langages de programmation, les types de projets et même entre les programmeurs, mais il y a certaines choses qui sont communes à de nombreux IDE, que je couvrirai ci-dessous.

La manière la plus simple de comprendre un IDE est d'envisager une solution «tout-en-un» comme Unity. En tant que moteur de jeu complet, Unity a tout ce dont vous avez besoin pour créer un jeu 2D ou 3D: une interface graphique qui vous permet de créer votre monde de jeu, un éditeur de code (Visual Studio) où vous pouvez écrire des scripts, un moyen de téléchargez les dépendances et les actifs, et même l'intégration GitHub afin que vous puissiez suivre les versions de build et collaborer sur des projets. Pour les petits projets, Unity peut être considéré comme un environnement de développement intégré entièrement fonctionnel, où tout est déjà configuré pour vous après le téléchargement du moteur de jeu.

La complexité des autres IDE peut varier considérablement, en particulier si vous venez d'un didacticiel en ligne qui vous permet de coder directement dans le navigateur. Un de mes reproches avec des réponses communes à la question, "quel langage de programmation dois-je apprendre?" est l'idée que l'apprentissage de JavaScript est plus facile car «il ne s'exécute que dans votre navigateur».

Dites-le à toute personne qui a tenté de configurer un IDE pour Create React App, qui nécessite plusieurs composants pour être opérationnel - dont aucun n'est apparent lorsque vous travaillez sur des didacticiels en ligne. Pour réellement travailler en tant que développeur, vous aurez besoin de quatre éléments principaux pour configurer votre environnement de développement intégré: un éditeur de code, une interface de ligne de commande (CLI), un système de contrôle de version et un gestionnaire de packages.

Mise en garde majeure: votre IDE peut varier considérablement en fonction du langage de programmation ou du type de projet, mais vous aurez probablement besoin d'un ou plusieurs des éléments suivants dans tous les cas!

Outil IDE n ° 1: éditeur de code (et compilateur)

Tout un tas de didacticiels en ligne vous permettent de coder simplement dans le navigateur, ce qui est idéal pour comprendre les concepts de base de la programmation, mais à long terme, vous aurez besoin d'un éditeur qui vous permet d'enregistrer votre code (et de le compiler, si vous utilisez un langage comme C # ou C ++).

Il existe de nombreux éditeurs de code, tels que Atom (léger, gratuit et open source), Sublime (très populaire avec des tonnes d'intégrations) et Visual Studio / Visual Studio Code (pris en charge par Microsoft et agréable à utiliser) . Il serait réducteur de dire qu'ils sont «tous identiques», car chacun fournit une approche différente pour prendre en charge votre flux de travail de codage, vous pouvez donc en essayer un ou deux avant de décider lequel vous préférez.

Outil IDE n ° 2: Interface de ligne de commande (CLI)

Si vous possédez un ordinateur, vous avez sans aucun doute utilisé votre explorateur de fichiers ou une autre interface graphique de navigation pour accéder au système de fichiers, créer des dossiers, supprimer des fichiers, etc.

L'interface de ligne de commande (CLI) vous permet de faire la même chose ... en texte brut. Ce qui peut sembler super archaïque ou ennuyeux au début, mais une fois que vous avez compris le chaînage des commandes et leur intégration dans votre flux de travail, vous commencerez à voir la puissance de la CLI et à quel point elle est essentielle pour la plupart des environnements de développement.

Sur Mac, vous utilisez peut-être le terminal. Comme j'ai installé GitHub pour Windows (plus d'informations sur GitHub ci-dessous) sur ma machine, j'utilise Git Bash pour mon travail. Il existe plusieurs options ici pour vous, et il pourrait être utile de consulter quelques didacticiels en ligne de commande pour comprendre certains des principes de base afin que vous vous sentiez à l'aise de l'utiliser dans votre IDE.

Outil IDE n ° 3: système de contrôle de version

Il existe plusieurs ressources qui fournissent des aperçus de ce qu'est le contrôle de version et pourquoi vous devriez l'utiliser. Qu'il suffise de dire que lorsque vous construisez autre chose qu'un simple projet, vous aurez besoin d'un moyen de sauvegarder votre travail, de partager votre code avec des collaborateurs et de suivre les différentes versions de construction afin que vous puissiez vous débarrasser des pièces. de la base de code et pas d’autres.

GitHub n'est pas le seul système de contrôle de version sur le marché, mais c'est l'étalon-or pour le moment, et il vaudrait la peine de consulter quelques tutoriels pour apprendre à tirer parti de ses fonctionnalités, même si vous venez l’utiliser comme méthode de sauvegarde à distance.

De plus, bien qu'il existe plusieurs addons pour intégrer GitHub directement dans votre éditeur de code (ou moteur de jeu), la pratique standard pour effectuer des tâches liées à Git consiste à utiliser l'interface de ligne de commande, ce qui fournit une autre raison pour devenir compétent avec votre CLI de choix. .

Outil IDE n ° 4: Gestionnaire de packages

Pour certains IDE, comme avec notre exemple Unity ci-dessus, tout ce que vous avez à faire est de télécharger et d'installer un logiciel pour commencer à construire vos projets. La plupart des dépendances dont vous aurez besoin seront incluses avec votre téléchargement initial, et sinon, il y aura un moyen d'y accéder à partir du moteur de jeu (par exemple, le magasin d'actifs Unity).

Pour d'autres IDE, plus choisissez votre propre aventure, vous devrez reconstituer les choses vous-même, et l'un des composants essentiels sera un gestionnaire de packages comme NPM ou Conda.

Les gestionnaires de packages font beaucoup de choses et, dans leurs fonctionnalités les plus élémentaires, ils vous aideront à installer toutes les dépendances dont vous aurez besoin pour faire votre travail. Si vous souhaitez vous lancer dans un projet React, par exemple, vous accédez à un dossier via votre CLI et, après l'installation de NPM (qui est fourni avec Node.js), tapez:

npx create-react-app my-app cd my-app npm start

La première ligne dit en gros: "Hé, NPM! Téléchargez toutes les dépendances pour Create React App et placez-les dans un dossier appelé 'my-app'."

La deuxième ligne indique alors à votre CLI: "Accédez au nouveau répertoire appelé 'my-app'."

La troisième ligne lance l'action: "NPM, c'est encore moi. Démarrez un serveur de développement qui affiche mon projet dans un navigateur et le met à jour chaque fois que j'apporte des modifications au code."

Une fois que vous avez installé toutes les dépendances nécessaires à l'aide de votre gestionnaire de packages, vous commencerez à travailler dans votre éditeur de code et à utiliser l'interface de ligne de commande pour effectuer des pull requests ou pousser du code vers un référentiel distant à l'aide de votre système de contrôle de version.

En résumé, un environnement de développement intégré comprend tout ce dont vous avez besoin pour faire votre travail et varie en fonction de la langue, du type de projet et de vos préférences personnelles. Habituellement, les IDE incluent un éditeur de code (et un compilateur), une interface de ligne de commande, un système de contrôle de version et un gestionnaire de packages, mais votre environnement de développement intégré peut avoir des exigences différentes ou une combinaison de celles-ci.

Tu peux le faire!

Si vous avez aimé cet article, pensez à consulter mes jeux et mes livres, à vous abonner à ma chaîne YouTube ou à rejoindre le Discord Entromancy .

MS Farzan, Ph.D. a écrit et travaillé pour des sociétés de jeux vidéo de haut niveau et des sites éditoriaux tels que Electronic Arts, Perfect World Entertainment, Modus Games et MMORPG.com, et a servi en tant que Community Manager pour des jeux comme Dungeons & Dragons Neverwinter et Mass Effect: Andromeda . Il est le directeur créatif et le concepteur principal du jeu Entromancy: A Cyberpunk Fantasy RPG et auteur de The Nightpath Trilogy . Retrouvez MS Farzan sur Twitter @sominator.