Dans notre TestMace Visual Studio Code est l'un des outils les plus populaires. Et il est d'autant plus encourageant qu'il se développe à pas de géant. Votre attention est invitée à traduire un article sur une autre fonctionnalité savoureuse, qui n'est disponible que dans VS Code Insiders.
Je suis d'accord, je suis allé trop loin avec le titre, je suis juste submergé d'émotions. J'ai décidé de partager mes premières impressions sur le développement à distance dans VS Code , au moment de la rédaction, disponible dans VS Code Insiders.
Les extensions pour le développement à distance nécessitent l'installation de Visual Studio Code Insiders .
La capacité de développement à distance dans Visual Studio Code est la possibilité d'utiliser un conteneur, un ordinateur distant ou le sous-système Windows pour Linux (WSL) comme environnement de développement complet. Dans le même temps, l'ensemble du processus est divisé en deux parties: la partie client de l'application s'exécute sur l'ordinateur local et le serveur VS Code est presque n'importe où. Le kit d'extension pour le développement à distance comprend trois extensions. Les trois articles suivants vous aideront à étudier chacun d'eux plus en détail:
- Remote - SSH - accès à n'importe quel répertoire sur une machine distante ou virtuelle à l'aide de SSH.
- Télécommande - Conteneurs - fonctionne avec un ensemble isolé d'outils ou d'applications conteneurisées à l'intérieur d'un conteneur (ou monté dans un conteneur).
- Remote - WSL - développement d'applications dans le sous-système Windows pour Linux (WSL).
Je vais donner un exemple concret. Supposons que vous ayez besoin de développer une application dans n'importe quelle langue, mais que votre ordinateur ne dispose pas de la langue elle-même, ni du SDK, ni des outils nécessaires.
De nombreux développeurs écrivant pour Windows créent des machines virtuelles Windows dans le cloud, puis se connectent au bureau via RDP et dirigent les fenêtres. Dans ce cas, la machine virtuelle effectue toutes les opérations associées. Les développeurs Linux créent des machines ou conteneurs virtuels Linux et s'y connectent via SSH via le terminal, lancent vim ou tmux et écrivent sur la console. Dans ce cas, la machine virtuelle effectue toutes les opérations associées. Dans les deux scénarios, la connexion client-serveur n'est pas implémentée, mais l'interaction du terminal ou du client léger avec le serveur. VS Code est un client lourd avec une interface claire et intuitive de services linguistiques et de transparence de localisation.
Lorsque vous écrivez du code - par exemple, une instance d'un objet et après le caractère point (.), Vous complétez automatiquement les noms du contenu de cet objet. Qui fait ça? D'où vient cette liste? Si le code s'exécute localement, et même dans le conteneur, vous devez vous assurer que les deux côtés (client et serveur) sont synchronisés, utilisez le même SDK et similaire. Pas une tâche facile.
Supposons que Rust ne soit pas installé sur votre ordinateur et les outils nécessaires au développement.
Ensuite, nous clonons le référentiel suivant:
git clone https://github.com/Microsoft/vscode-remote-try-rust
Lancez VS Code Insiders:
C:\github> git clone https://github.com/Microsoft/vscode-remote-try-rust Cloning into 'vscode-remote-try-rust'... Unpacking objects: 100% (38/38), done. C:\github> cd .\vscode-remote-try-rust\ C:\github\vscode-remote-try-rust [main =]> code-insiders .
VS Code vous demande ensuite si vous souhaitez ouvrir ce conteneur.
Le fichier devcontainer.json contient une liste d'extensions requises pour le projet en cours. Les extensions VS Code seront installées dans le conteneur Docker, puis pourront être utilisées à distance. Votre système local n'en a pas besoin du tout, il suffit d'installer uniquement ceux que vous prévoyez d'utiliser dans le projet en cours. Bien sûr, vous pouvez vous passer de rien installer sur votre ordinateur local, mais le moyen d'or est de se débarrasser de la configuration manuelle inutile du système.

Jetez un œil à la capture d'écran ci-dessous. Ici, les outils dont vous avez besoin sont ajoutés au dockerfile, l'exécutable Docker est lancé, et nous voyons le serveur VS Code!

Accédez à la section Extensions dans VS Code et faites attention au coin inférieur gauche. La barre d'état verte indique que l'interaction client-serveur a été implémentée. Toutes les extensions Rust nécessaires sont installées dans le conteneur et sont prêtes à l'emploi dans VS Code. L'ensemble du processus d'installation a pris quelques minutes.

En modifiant le code de cette manière, vous obtenez les mêmes fonctions de saisie semi-automatique, de débogage, etc.

Voici un exemple de session de débogage d'application en temps réel sur Rust qui ne nécessite aucune configuration autre que l'installation de VS Code Insiders, Remote Extensions et Docker (que j'avais déjà).

Comme je l'ai dit, vous pouvez exécuter du code en utilisant WSL, dans des conteneurs ou via SSH . Ce style de développement ne fait que gagner du terrain. C'est simple et direct, et il est très intéressant pour moi de voir où cela nous mène. Nous devons effectuer de nombreuses tâches de routine , et l'édition à distance du code nous permet de rejeter tout ce qui est superflu du processus de développement et de concentrer notre attention sur la chose la plus importante.