Visual Studio Code против Visual Studio: как выбрать

В течение десятилетий, когда я приходил на работу по утрам, я запускал Microsoft Visual Studio (или одну из ее предшественниц, например Visual C ++ или Visual InterDev), затем заваривал чай и, возможно, присутствовал на утреннем собрании, пока он проходил трудоемкий запуск. . Я бы держал IDE открытой весь день, пока проходил циклы разработки / тестирования / отладки, чтобы избежать очередной задержки запуска. Когда я работал над проектом C ++ с ~ 2 миллионами строк кода, я также быстро начинал ежедневную работу, автоматически запуская пакетный сценарий, который выполнял проверку кода и полное перестроение продукта в предрассветные часы.

В наши дни я не  чувствую необходимости открывать свои проекты кода первым делом каждое утро или держать их открытыми весь день. Visual Studio Code обычно запускается достаточно быстро, так что я могу продуктивно работать за несколько минут даже для больших проектов. Я сказал обычно, не всегда: сам Visual Studio Code требует ежемесячного обновления, а многие установленные мной расширения часто нуждаются в собственных обновлениях. Тем не менее, даже обновление дюжины расширений в Visual Studio Code занимает гораздо меньше времени, чем Visual Studio требуется для перестройки таблиц символов большого проекта C ++.

Что такое код Visual Studio?

Visual Studio Code - это легкий, но мощный редактор исходного кода, который работает на вашем рабочем столе и доступен для Windows, MacOS и Linux. Он поставляется со встроенной поддержкой JavaScript, TypeScript и Node.js и имеет богатую экосистему расширений для других языков (таких как C ++, C #, Java, Python, PHP и Go) и среды выполнения (таких как .Net и Единство).

Помимо идеи облегчения и быстрого запуска, VS Code имеет автозавершение кода IntelliSense для переменных, методов и импортированных модулей; графическая отладка; линтинг, редактирование с несколькими курсорами, подсказки по параметрам и другие мощные функции редактирования; шикарная навигация по коду и рефакторинг; и встроенный контроль исходного кода, включая поддержку Git. Большая часть этого была адаптирована из технологии Visual Studio.

Собственно VS Code создается с использованием оболочки Electron, Node.js, TypeScript и протокола Language Server и обновляется ежемесячно. Расширения обновляются по мере необходимости. Богатство поддержки различается для разных языков программирования и их расширений, начиная от простой подсветки синтаксиса и сопоставления скобок до отладки и рефакторинга. Если языковой сервер недоступен, вы можете добавить базовую поддержку вашего любимого языка с помощью раскраски TextMate.

Код в репозитории Visual Studio Code имеет открытый исходный код по лицензии MIT. Сам продукт VS Code поставляется под стандартной лицензией на продукт Microsoft, поскольку в нем есть небольшой процент настроек, специфичных для Microsoft. Это бесплатно, несмотря на коммерческую лицензию.

Что такое Visual Studio?

Visual Studio (текущая версия Visual Studio 2019) - это основная IDE от Microsoft для Windows и MacOS. С помощью Visual Studio вы можете разрабатывать, анализировать, отлаживать, тестировать, сотрудничать и развертывать свое программное обеспечение.

В Windows Visual Studio 2019 в настоящее время имеет 17 рабочих нагрузок, которые представляют собой согласованные пакеты установки инструментов и компонентов для различных целей разработки. Рабочие нагрузки являются важным улучшением процесса установки Visual Studio, поскольку полная загрузка и установка Visual Studio 2019 может занять несколько часов и заполнить диск, особенно SSD.

Visual Studio 2019 для Mac имеет менее сложный установщик, чем версия для Windows, в основном потому, что он не поддерживает такое количество целей. Он позволяет разрабатывать для Интернета, мобильных устройств и настольных компьютеров с помощью .Net, с поддержкой Unity, Azure и Docker по умолчанию. Цели .Net Core, Android, iOS и MacOS не являются обязательными; последние три используют Xamarin.

Visual Studio 2019 поставляется в трех вариантах SKU: Community (бесплатно, не поддерживается для корпоративного использования), Professional (1199 долларов в первый год / 799 долларов при продлении) и Enterprise (5999 долларов в первый год / 2569 долларов при продлении). Enterprise Edition имеет функции для архитекторов, расширенную отладку и тестирование, которых нет в двух других SKU.

Visual Studio или Visual Studio Code?

Вы можете подумать, что выбор между Visual Studio и Visual Studio Code для любой конкретной задачи разработки программного обеспечения будет таким же простым, как выбор между IDE и редактором. Это не так, в основном потому, что VS Code можно настроить так, чтобы он был довольно близок к IDE для многих языков программирования. Тем не менее, эта настраиваемость предполагает ряд компромиссов.

Например, если ваш стиль разработки основан на тестировании, Visual Studio будет работать сразу после установки. С другой стороны, существует около 15 расширений для разработки на основе тестов для VS Code, поддерживающих Node.js, Go, .Net и PHP. Точно так же Visual Studio хорошо работает с базами данных, особенно с Microsoft SQL Server и его родственниками, но VS Code имеет множество расширений баз данных. Visual Studio имеет отличную поддержку рефакторинга, но Visual Studio Code реализует базовые операции рефакторинга для полдюжины языков.

Есть несколько явных случаев. Например, если вы архитектор программного обеспечения и у вас есть доступ к Visual Studio Enterprise, вы захотите его использовать. Если вам нужно сотрудничать с членами команды в разработке или отладке, то Visual Studio - лучший выбор. Если вам нужно провести серьезный анализ кода, профилирование производительности или отладку из моментального снимка, Visual Studio Enterprise поможет вам.

VS Code имеет тенденцию быть популярным в сообществе специалистов по анализу данных. Тем не менее в Visual Studio 2019 есть рабочая нагрузка для обработки данных, которая предлагает множество функций.

Visual Studio не работает в Linux; VS Code делает. С другой стороны, Visual Studio для Windows имеет рабочую нагрузку Linux / C ++ и поддержку Azure.

Для повседневных циклов разработки / тестирования / отладки на языках, поддерживаемых как в Visual Studio, так и в VS Code, выбор, который вы выбираете, действительно сводится к личным предпочтениям. Если вы склонны работать над проектом разработки часами, то Visual Studio может вам больше подойти. Если вы склонны на короткое время окунуться в разработку и переключаться между другими задачами, Visual Studio Code может сделать вас счастливее.