Sur quoi repose l'éditeur de code Visual Studio

Réponses:

218

Visual Studio Code est construit à l'aide de technologies Web en plus d' Electron de Github .

Electron est un runtime d'application pour écrire des applications natives qui utilise Chromium (sur lequel Google Chrome est construit) pour rendre l'interface et node.js pour les API locales (exemple: accès au système de fichiers) , il a été construit principalement comme shell pour le code Atom de Github éditeur. (Remarque: Electron est très similaire à NW.js ) .

Node.js est un runtime d'application (JavaScript) construit sur le moteur JavaScript V8 de Google avec du code C et C ++ pour lui donner accès aux API natives pour chaque système d'exploitation (exemple: accès au système de fichiers) .

Essentiellement, le nouveau produit de Microsoft repose entièrement sur des logiciels open source dont les principaux composants ont été créés par Google.

Il y a des rumeurs selon lesquelles le code Visual Studio est soit un fork, soit un changement de marque de l'éditeur Atom de Github. Ce n'est même pas vrai de loin. L'inspection de la source de Visual Studio Code révèle qu'il utilise Electron et Atom Shell Archive , mais rien d'autre ne provient de l'éditeur Atom.

La partie «éditeur» (la chose qui rend le code avec la coloration syntaxique, les numéros de ligne, etc.) de Visual Studio Code est l'éditeur Monaco de Microsoft. Il s'agit du même éditeur utilisé pour OneDrive, Windows Azure, TypeScript Playground et Visual Studio Online. Je n'ai pas encore trouvé de véritable documentation sur cet éditeur de Microsoft mais il existe quelques articles à ce sujet sur le Web.

Omnisharp est utilisé pour fournir IntelliSense et d'autres outils d'édition de code pour C # (exemple: refactoring) .

JavaScript Intellisense semble être tout du code personnalisé. Il fournit des finitions JavaScript impressionnantes, mais dans de nombreux cas, il semble être inférieur à Tern (voir la démo de Tern ) .

Sevin7
la source
1
Je regarde dans Code depuis un jour et cela a changé mon point de vue sur JS dans une application de bureau. J'ai regardé Atom et j'ai été très déçu, car il ne pouvait pas faire les choses de base que je m'attendais à ce qu'il fasse à partir d'un éditeur de texte. Le code m'a prouvé que j'avais tort, quel contrôle d'éditeur de texte puis-je utiliser dans mon node-desktop / web-app?
elcuco
2
@elcuco - L'éditeur Ace ( ace.c9.io/build/kitchen-sink.html ) et Code Mirror ( codemirror.net ) sont des éditeurs de code HTML (je préfère personnellement Ace).
Sevin7
1
Ce qui est agréable à voir, c'est le retour des grands logiciels, je crois qu'Erik Gamma (GoF) a été impliqué dans l'outillage pour le code Visual Studio et encore inédit en ligne "Monaco" et Anders Hejslberg (créateur de Pascal / Delphi) est largement responsable de Typescript (Superset de Javascript rendant le type sûr)
Faktor 10
Visual Studio Code est maintenant open source, sous licence MIT: github.com/Microsoft/vscode
Juha Palomäki
2
L'éditeur de Monaco est maintenant également open source et dispose d'une bonne quantité de documentation sur son hub , y compris une documentation complète sur l'API
kmote