На чем построен редактор кода Visual Studio

148

На каких базовых технологиях / библиотеках построен новый (бесплатный) кроссплатформенный редактор Microsoft Visual Studio Code (выпущен 29 мая 2015 г.) ? Ходят слухи, что это просто ребрендинг редактора Atom на Github.

Севин7
источник

Ответы:

224

Visual Studio Code построен с использованием веб-технологий поверх Electron Github .

Electron - это среда выполнения приложений для написания собственных приложений, использующих Chromium (на котором построен Google Chrome) для рендеринга интерфейса и node.js для локальных API (например, доступ к файловой системе) , она была создана в основном как оболочка для кода Atom Github. редактор. (Примечание: Electron очень похож на NW.js ) .

Node.js - это среда выполнения приложения (JavaScript) , построенная на движке Google V8 JavaScript с кодом C и C ++, чтобы предоставить ему доступ к собственным API для каждой операционной системы (пример: доступ к файловой системе) .

По сути, новый продукт Microsoft полностью построен на программном обеспечении с открытым исходным кодом, основные компоненты которого были созданы Google.

Ходят слухи, что код Visual Studio - это либо форк, либо ребрендинг редактора Atom на Github. Это не совсем так. Проверка исходного кода Visual Studio Code показывает, что он использует Electron и Atom Shell Archive , но больше ничего не из редактора Atom.

«Редактор» (то, что отображает код с выделением синтаксиса, номерами строк и т. Д.) Visual Studio Code - это редактор Microsoft Monaco. Это тот же редактор, который используется для OneDrive, Windows Azure, TypeScript Playground и Visual Studio Online. Мне еще предстоит найти настоящую документацию по этому редактору от Microsoft, но в сети есть несколько статей об этом.

Omnisharp используется для предоставления IntelliSense и других инструментов редактирования кода для C # (пример: рефакторинг) .

Кажется, что JavaScript Intellisense представляет собой собственный код. Он обеспечивает впечатляющие доработки JavaScript, но во многих случаях оказывается хуже Tern (см. Tern Demo ) .

Севин7
источник
1
Я изучаю код в течение дня, и он изменил мое мнение о JS в настольном приложении. Я посмотрел на Atom и был очень разочарован, так как он не мог делать основные вещи, которые я ожидал от текстового редактора. Код доказал, что я ошибаюсь, какой элемент управления текстовым редактором я могу использовать в своем приложении node-desktop / web-app?
elcuco
3
@elcuco - Редактор Ace ( ace.c9.io/build/kitchen-sink.html ) и Code Mirror ( codemirror.net ) - это редакторы кода HTML (лично я предпочитаю Ace).
Sevin7
1
Что приятно видеть, так это возвращение великих разработчиков программного обеспечения, я считаю, что Эрик Гамма (GoF) участвовал в разработке инструментов для кода Visual Studio и пока еще не выпустил онлайн-версию «Монако», а Андерс Хейслберг (создатель Pascal / Delphi) - в значительной степени отвечает за Typescript (надмножество Javascript, делающее его типизированным)
Faktor 10
Visual Studio Code теперь имеет открытый исходный код под лицензией MIT: github.com/Microsoft/vscode
Юха Паломяки,
2
Редактор Monaco теперь также имеет открытый исходный код и имеет много документации на своем хабе , включая обширную документацию по API
kmote