Share:

Saviez-vous que vous pouvez écrire, exécuter et déboguer du code dans le Cloud ?

Dale Morson, développeur de systèmes Cloud, partage une introduction aux IDE Cloud.

En tirant parti d’un IDE (environnement de développement intégré) basé sur le Cloud, ou simplement d’un IDE Cloud, vous pouvez apporter de la valeur à votre stratégie Cloud. Nous allons explorer les défis des IDE de bureau et présenter les IDE Cloud, puis nous passerons en revue les options disponibles. Enfin, nous énumérerons certains avantages de l’utilisation d’un IDE Cloud, ainsi que certains des défis que vous pouvez rencontrer.

Défis des IDE de bureau 

Les outils de développement tels que les IDE de bureau sont installés, configurés et maintenus localement sur un appareil géré ou personnel. Cela peut prendre du temps et poser des problèmes. Les packs d’installation peuvent faire des dizaines de Go et prendre un certain temps à télécharger, les processus d’installation dépendent de la puissance de calcul locale, les dépendances installées existantes peuvent causer des problèmes avec les nouveaux outils et les environnements locaux et les versions peuvent différer entre les appareils. Cela crée à son tour la situation « fonctionne sur ma machine ». Cela peut être un processus frustrant pour le support et les développeurs. Dire adieu à un EDI de bureau et bonjour à un EDI Cloud peut éliminer ces difficultés.

Qu’est-ce qu’un IDE Cloud ?

Un IDE Cloud est accessible en toute sécurité à partir d’un navigateur Web pris en charge (Google Chrome, Mozilla Firefox, Microsoft Edge, Apple Safari, etc.), ce qui permet un accès quasi instantané aux outils et aux langages de programmation les plus populaires, offrant ainsi au développeur ou à l’ingénieur tout ce dont il a besoin pour écrire, exécuter et déboguer du code. Il n’y a aucune dépendance locale à installer ou à maintenir et il est possible d’y accéder sur n’importe quel appareil (ordinateur portable, tablette et téléphone), depuis n’importe quel endroit, avec un simple ensemble d’identifiants. Idéal pour les scénarios hybrides sécurisés ou le travail à domicile ! 

La capture d’écran suivante montre Visual Studio Code installé localement comme un IDE de bureau.

cloud ide

En revanche, la capture d’écran suivante montre le navigateur Chrome et Visual Studio Code fonctionnant comme un IDE Cloud.

cloud ide

Quels sont les IDE Cloud disponibles ?

Maintenant que vous savez ce qu’est un IDE Cloud, examinons quelques-unes des options disponibles. 

GitHub Codespaces

Le chemin parcouru par Microsoft pour fournir un IDE Cloud a commencé avec Visual Studio Online, qui a ensuite été rebaptisé Visual Studio Codespaces. Il s’agissait d’instances de Visual Studio Code hébergées dans le Cloud, accessibles depuis un navigateur. Lorsque Microsoft a racheté GitHub en 2018, Microsoft Visual Studio Codespaces est devenu GitHub Codespaces. Ce service fournit toujours une instance de Visual Studio Code fonctionnant sur des machines virtuelles très performantes, mais avec une intégration étroite à GitHub, le plus grand dépôt de code. L’utilisation de GitHub Codespaces vous permettrait d’utiliser n’importe quel langage et de déployer sur n’importe quelle plateforme Cloud.

Un espace de code GitHub est un environnement de développement fonctionnant comme un conteneur qui comprend un clone d’un répertoire GitHub, les moteurs d’exécution du langage de programmation requis et les outils dépendants. Vous pouvez accéder à l’environnement à l’aide d’un IDE Cloud qui est une version navigateur de Visual Studio Code. GitHub Codespaces utilise la configuration en tant que code, ce qui vous permet d’adapter un environnement à vos besoins et de garantir à chaque développeur une expérience cohérente et standardisée. 

AWS Cloud9

Cloud9 était un produit open-source jusqu’en 2016, date à laquelle il a été acquis par Amazon Web Services (AWS). Comme il s’agit d’un service AWS, vous devez disposer d’un compte AWS pour l’utiliser, ce qui signifie qu’il est étroitement lié à AWS, offrant une expérience transparente pour le développement d’applications sans serveur. Cela rend AWS Cloud9 parfait pour les développeurs AWS. Il existe également un accès direct au terminal, qui comprend des privilèges sudo pour l’instance Amazon EC2 gérée qui héberge votre environnement de développement, ainsi qu’une interface de ligne de commande AWS préauthentifiée. La collaboration en temps réel est facile avec Cloud9, en quelques clics seulement. Les développeurs peuvent programmer ensemble en binôme, discuter instantanément et déboguer le code entre eux, le tout à partir de l’IDE Cloud.

Google Cloud Code

Google Cloud Platform (GCP) propose Google Cloud Code comme IDE Cloud natif. Tout comme AWS, l’offre de Google est étroitement intégrée à ses propres services, ce qui la rend parfaite pour les développeurs GCP. Elle dispose d’un support intégré pour les applications Kubernetes et Cloud Run. Il est possible d’accéder à Cloud Code à l’aide d’une extension de Visual Studio Code, de l’IDE IntelliJ de JetBrains ou de l’éditeur Google Cloud Shell. 

GitPod

GitPod est une plateforme basée sur des conteneurs qui permet de créer des environnements de développement prêts à coder. GitPod utilise Configuration-as-code pour configurer des environnements standard et sécurisés qui se mettent en route lorsque vous en avez besoin et se ferment lorsque vous n’en avez plus besoin. Un espace de travail GitPod comprend tout ce dont vous avez besoin, y compris le code source du projet, un shell Linux, un système de fichiers, l’expérience complète d’édition de Visual Studio Code, y compris les extensions, la prise en charge des langues. Il prend en charge toutes les principales plateformes Git, notamment GitHub, GitLab et BitBucket.

Quand vous pouvez bénéficier des IDE Cloud

Voici quelques avantages :

  1. ) Accéder à des IDE Cloud sur n’importe quel appareil, depuis n’importe quel endroit, en toute sécurité, à l’aide d’un simple navigateur. Des appareils à faible puissance auparavant inadaptés, tels que les Chromebooks, peuvent désormais être utilisés pour le développement cloud natif.
  2. ) Coder en temps réel avec d’autres personnes et collaborer à distance. Faire évoluer facilement les charges de travail informatiques, sans se limiter à la puissance de calcul locale.
  3. ) Prendre en charge le travail hybride et à distance, ce qui permet une intégration et un désengagement plus rapides. Utile pour la continuité des activités en ces temps incertains.
  4. ) Appliquer les principes du moindre privilège, c’est-à-dire qu’aucun accès supplémentaire n’est nécessaire, comme les réseaux d’entreprise ou le VPN, pour accéder à un IDE Cloud. 
  5. ) Contrôle centralisé de l’outillage standardisé conduisant à une gouvernance accrue et à une diminution de l’utilisation d’outils informatiques parallèles. Cette gestion centralisée des actifs peut permettre de respecter les règles de conformité et d’améliorer la protection des données.

Défis actuels des IDE Cloud

Si les avantages sont nombreux, certains défis doivent néanmoins être pris en compte :

  1. ) Les IDE Cloud sont uniquement en ligne, vous avez besoin d’une connexion Internet pour travailler et une mauvaise connectivité haut débit à domicile pourrait avoir un impact sur certains utilisateurs (c’est-à-dire ceux qui vivent dans des zones reculées avec des connexions instables et lentes).
  2. ) Alors qu’un IDE Cloud est parfait pour certains scénarios comme le développement cloud natif ou l’ingénierie de plateforme, il peut présenter des limites pour le développement d’applications Java ou .NET complètes avec des frontaux. Par exemple, Visual Studio Enterprise fournit des outils complets qui ne peuvent pas être égalés dans le Cloud à l’heure actuelle. 
  3. ) Des changements culturels devraient être opérés, notamment des méthodes de travail qui pourraient être difficiles à adopter, en particulier pour les développeurs expérimentés. Il faudrait s’éloigner de l’outillage local, familier et personnalisable.

Résumé

Un IDE Cloud peut apporter de la valeur à votre stratégie Cloud, quelle que soit l’étape de votre voyage vers le Cloud. Il existe de nombreuses options d’IDE Cloud qui peuvent s’aligner sur vos besoins, notamment celles qui sont étroitement intégrées à leurs plateformes respectives, comme AWS Cloud9 et Google Cloud Code, et d’autres qui sont indépendantes du Cloud et favorisent le développement multiplateforme, comme GitHub Codespaces et GitPod. Votre approche de l’adoption des IDE Cloud dépend de vos pratiques culturelles de travail. Toutefois, dans une culture DevOps, vous pouvez suivre un déploiement itératif en commençant par de petites équipes agiles, puis travailler à l’échelle en utilisant les champions des IDE Cloud. Si l’utilisation des IDE Cloud présente encore des difficultés, les avantages et les scénarios pratiques sont bien plus nombreux et ne donnent qu’un aperçu de ce qui est possible aujourd’hui.