Visual Studio Code
Visual Studio Code — редактор исходного кода (IDE, Integrated Development Environment), основан на Electron, разработанный Microsoft для Windows, Linux и macOS. Позиционируется как «лёгкий» редактор кода для кроссплатформенной разработки веб- и облачных приложений. Включает в себя отладчик, инструменты для работы с Git, подсветку синтаксиса, IntelliSense и средства для рефакторинга. Имеет широкие возможности для кастомизации: пользовательские темы, сочетания клавиш и файлы конфигурации. Распространяется бесплатно, разрабатывается как программное обеспечение с открытым исходным кодом.
VS Code также имеет множество доступных расширений, которые улучшают его функциональные возможности. Одним из таких расширений является PlatformIO.
Установка Visual Studio Code
Загрузить VS Code можно бесплатно с , Здесь вы можете выбрать, на какую операционную систему вы хотите установить VS Code.
Если у вас есть право администратора и хотите установить Visual Studio Code для всех пользователей, тогда вам нужно скачать версию «System Installer«. Если вам нужно установить IDE только для текущего пользователя, вам необходимо скачать «User Installer«.
Как только IDE будет загружена, дважды щелкните на exe-файл для установки. При нажатии на исполняемый файл должно отобразиться следующее лицензионное соглашение:
Выберите I accept the agreement и нажмите Next.
Вы можете изменить место установки VS Code, нажав на кнопку Browse, но в большинстве случаев подойдет местоположение по умолчанию. Нажмите кнопку Next.
Здесь можно сохранить значения по умолчанию. Нажмите Next.
Диалоговое окно дополнительных задач позволяет связать VS Code с большинством типов программных файлов, таких как *.cpp, *.py или *.ino. Это может быть полезно для быстрого запуска VS Code при двойном щелчке по файлу с которым нужно работать. Убедитесь, что выбран Add to Path. Нажмите кнопку Next.
Приведенный выше скриншот — краткое изложение того, куда и как VS Code будет установлен. Чтобы начать установку, нажмите Install.
Если установка прошла успешно, вы должны увидеть диалоговое окно — см. выше.
При первом запуске вы увидите такое окно (см. ниже):
Способы запуска программ Windows в Linux
Запуск приложений Windows в Linux – это не ракетостроение. Вот различные способы запуска EXE-файлов в Linux:
Использование уровня совместимости
Уровни совместимости Windows могут помочь пользователям Linux запускать файлы EXE в своей системе. Wine, сокращение от Wine Is Not an Emulator, является популярным слоем совместимости Windows, который соответствует своему названию.
В отличие от эмуляторов и виртуальных машин, Wine не запускает программу в Windows-подобной среде, созданной в системе Linux. Вместо этого он просто преобразует системные вызовы Windows в эквивалентные им команды POSIX.
В целом, уровни совместимости, такие как Wine, отвечают за преобразование системных вызовов, реформирование структуры каталогов и предоставление программе системных библиотек, специфичных для ОС.
Установка и использование Wine для запуска Windows-программ в Linux очень просты. После установки вы можете выполнить следующую команду для запуска EXE-файла с помощью Wine:
Пользователи Linux, которые хотят играть в игры только для Windows, могут выбрать PlayOnLinux, внешнюю обертку для Wine, или PortProton. PortProton – поможет вам запускать все современные игры windows в linux.
Запуск Windows внутри виртуальной машины
Другим обходным решением является запуск EXE-файлов Windows с помощью виртуальных машин. Гипервизор виртуальных машин, такой как VirtualBox, позволяет пользователям устанавливать вторичную операционную систему, которая работает в рамках их основной ОС.
Для этого достаточно установить VirtualBox, KVM или VMWare, создать новую виртуальную машину и установить на ней Windows. Затем вы можете просто запустить виртуальную машину и запустить Windows внутри вашей ОС на базе Linux. Таким образом, вы сможете запускать EXE-файлы и другие программы, как это обычно делается на компьютере только с Windows.
Кроссплатформенная разработка программного обеспечения – это будущее
В настоящее время огромная доля доступного программного обеспечения ориентирована исключительно на одну операционную систему. Большинство приложений, которые вы можете найти, доступны исключительно для Windows, macOS, Linux или комбинации этих ОС. Редко когда удается установить программу, работающую на всех основных операционных системах.
Но все это меняется с развитием кроссплатформенности. Разработчики программного обеспечения теперь создают приложения, которые могут работать на нескольких платформах. Spotify, медиаплеер VLC, Sublime Text и Visual Studio Code – вот некоторые примеры кроссплатформенного программного обеспечения, доступного для всех основных операционных систем.
А что вы думаете об этом?
Оцените? +1
+1
+1
+1
+1
+1
+1
Нужны ли старые версии Visual C++?
В интернете часто задают вопрос, нужны ли на компьютере все версии библиотек Microsoft Visual C++, или почему они не обновляются до последней, удаляя все предыдущие. Ответим, что удалять их не стоит, особенно если вы не хотите сталкиваться с проблемой невозможности запуска одной из ранее установленных игр после удаления старой версии Visual C++.
Если вы видите подобную картину в списке установленных программ, то лучшим решением будет просто пролистать этот список и не трогать его.
Не спешите удалять и 32-разрядные версии пакетов (с пометкой х86), даже если пользуетесь 64-разрядной Windows (x64). Их могут использовать установленные программы и игры!
Конфигурация
Пакет хранит конфигурацию в файле .
Пакет AUR хранит конфигурацию в файле .
Встроенный терминал
Меню Вид > Терминал или открывает встроенный терминал.
По умолчанию используется Bash без каких-либо параметров, но настройки, указанные далее позволяют изменить данное взаимодействие.
- устанавливает терминал по умолчанию
- устанавливает передаваемые в терминал аргументы
Например, установить по умолчанию fish с параметрами.
~/.config/Code/User/settings.json
"terminal.integrated.shell.linux": "/usr/bin/fish", "terminal.integrated.shellArgs.linux":
Вы можете столкнуться со странными запросами при установке встроенного терминала, удалением некоторых строк, поэтому рекомендуется либо не использовать аргументы, либо использовать внешний терминал.
Внешний терминал
Если вы используете Terminator как терминал по умолчанию, у вас могут возникнуть проблемы в VS Code с ошибками вида: , поэтому следует сменить терминал на другой, например, .
Строка настроек установит терминал на требуемый. Пример установки :
~/.config/Code/User/settings.json
"terminal.external.linuxExec": "gnome-terminal"
Установка Visual Studio 2019 Community на Windows 10
Перед тем как переходить к установке Visual Studio 2019, хотелось бы еще раз отметить, что для того чтобы установить хотя бы пару компонентов (рабочих нагрузок), потребуется достаточно много места на жестком диске (10-20 гигабайт), а если установить больше 2-3 компонентов, то объем может достигать и сотни гигабайт, у меня установка Visual Studio 2019 заняла более 20 ГБ места на жестком диске.
Хорошо, что установщик в 2019 версии Visual Studio (который появился в 2017 версии, но в 2019 он улучшен) позволяет выбрать только те компоненты, которые нужны нам для создания нашего приложения, например, если нам нужно разработать web-приложения, устанавливать рабочие нагрузки для создания классических приложений не требуется, тем самым мы можем экономить место на жестком диске.
Также в случае необходимости мы всегда можем удалить ненужные нам компоненты.
Шаг 1 – Запускаем установщик
Запускаем скаченный установщик, т.е. файл vs_Community.exe.
Сначала установщику необходимо выполнить подготовительные действия, нажимаем «Продолжить», тем самым мы также соглашаемся с условиями лицензионного соглашения.
После чего загрузятся и установятся необходимые файлы установщика.
Шаг 2 – Выбор компонентов, настройка установки
После того как установщик выполнит все необходимые предварительные мероприятия, он запустится. Теперь нам нужно выбрать «Рабочие нагрузки», т.е. что мы будем создавать с помощью Visual Studio 2019 Community, я выбрал разработку как классических приложений под компьютер, так и разработку Web-приложений.
В принципе после этого можно сразу нажимать «Установить», но в случае необходимости Вы можете более детально настроить установку, для этого есть дополнительные вкладки: «Отдельные компоненты», «Языковые пакеты» и «Расположения установки».
Вкладка «Отдельные компоненты» – если есть такая необходимость, Вы можете конкретизировать компоненты, которые необходимо установить, на этой вкладке.
Вкладка «Языковые пакеты» – по умолчанию установлен язык, соответствующий языку системы, но, если Вам нужен другой, Вы можете изменить его на данной вкладке.
Вкладка «Расположения установки» – здесь Вы можете изменить каталог, в который будет установлена среда Visual Studio.
Шаг 3 – Процесс установки и его завершение
После того как Вы нажали кнопку установить, начнется процесс загрузки и установки всех выбранных компонентов. В зависимости от объема компонентов, скорости интернета и характеристик ПК продолжительность данного процесса будет различаться, специально я не засекал, но мне кажется, он у меня длился минут 20-30.
Когда появится следующее окно, установка будет завершена, нажимаем «Перезагрузить».
3: Выполнение кода на удаленном сервере
Плагин Remote-SSH настроен, подключение создано. Давайте попробуем запустить код на удаленной машине. Откройте окно терминала, выбрав Terminal в панели навигации в верхней части интерфейса Visual Studio и кликнув New Terminal. Вы также можете открыть терминал при помощи клавиш CTRL+Shift+`. Этот терминал откроется на вашем удаленном сервере, а не на локальном компьютере.
Когда терминал откроется, введите следующую команду, чтобы запросить IP-адрес и убедиться, что вы подключены к удаленному серверу:
Вы увидите следующий вывод в своем терминале:
Чтобы убедиться, что вы можете запускать код удаленно, создайте новый файл Python по имени hello.py в вашем редакторе. После подключения к удаленному серверу все файлы, созданные с помощью Visual Studio Code, будут сохранены на удаленном сервере (не на вашем локальном компьютере).
Добавьте следующие строки в файл:
Чтобы запустить эту программу на своем сервере, откройте терминал в Visual Studio Code из меню или с помощью клавиш CTRL+Shift+`. Этот сеанс терминала подключен к вашему удаленному серверу. Введите следующую команду, чтобы запустить вашу программу hello.py:
Вывод вашей программы будет отображаться в терминале.
Вы также можете запустить файл из контекстного меню Debug, выбрав при этом опцию Run without Debugging.
Примечание: Если вы используете какие-либо расширения для разработки в Visual Studio Code (например, расширение Python), вам придется переустановить эти расширения на своем удаленном сервере с помощью Extension Marketplace. Если вы ранее установили эти плагины в Visual Studio Code, при повторном поиске их в Marketplace появится сообщение «Install on SSH: hostname»
Всегда обращайте внимание на то, в каком контексте разработки вы находитесь, потому что именно сюда Visual Studio Code установит ваши плагины и создаст файлы. Если вы попытаетесь запустить код без предустановленных плагинов, в правом нижнем углу экрана появится диалоговое окно с сообщением об ошибке, которое предложит установить плагины на удаленном сервере
После их установки, вероятно, потребуется перезагрузить Visual Studio Code. После перезагрузки он продолжит работу с удаленным сервером без необходимости повторного подключения вручную.
API для получения версии в Windows
Версия Windows отображается в модуле настройки, доступном из панели управления:
Узнать версию ОС программно Windows можно с помощью WinAPI. WinAPI расшифровывается как Windows API. Он детально задокументирован на сайте msdn.microsoft.com — портале от компании Microsoft, предназначенном для сторонних разработчиков. Найти документацию по функциям WinAPI можно, передав в поисковик запрос “msdn FunctionName” или “FunctionName site:msdn.microsoft.com”. Также помогают запросы из разряда “winapi how to …”.
Большая часть WinAPI доступна при подключении единственного заголовочного файла . А это — небольшой пример:
Имейте ввиду, что функция GetVersion возвращает кодовый номер версии, который нужно сопоставить с таблицей версий и определить человекопонятное имя.
В WinAPI действует ряд соглашений в именовании:
- функции именуются в UpperCamelCase, например, GetVersion, GetVersionEx. Сокращения используются в редких случаях, например, суффиксом “Ex” помечают расширенную версию более старой фукнции.
- имена типов данных именуются в верхнем регистре, часто с сокращениями: RECT, POINT, HMENU (handle to menu), OSVERSIONINFO (OS version information) и так далее
- для создания и удаления системных объектов, например, типа XYZ, предоставляются функции с именами вида “CreateXYZ” и “DestroyXYZ”
- многие привычные типы данных получили свои синонимы (в целях максимального контроля над стабильностью)
- WORD — машинное слово, 16-битное целое без знака, аналог uint16_t
- DWORD — удвоенное машинное слово, 32-битное целое без знака, аналог uint32_t
- BOOL — синоним типа int, введённый по той причине, что в языке C89 нет типа bool. Тип появился в C++, а тип — в C99
- LPCSTR — синоним , расшифровывается как Left-Pointer to Const String, т.е. изменяемый (способный стоять в левой части присваивания) указатель на неизменяемую строку в стиле C, завершённую нулевым символом.
- LPSTR — синоним , расшифровывается как Left-Pointer to String, т.е. изменяемый (способный стоять в левой части присваивания) указатель на изменяемую строку в стиле C, завершённую нулевым символом.
- LPCWSTR — синоним , расшифровывается как Left-Pointer Wide Const String, т.е. вместо типа char использует тип wide char, способный представлять символы одной из кодировок Unicode — UTF16
Вы могли заметить, что в предыдущих двух примерах используются устаревшие функции. Начиная с Windows 8, компания Microsoft решила объявить устаревшими GetVersion и GetVersionEx, и они теперь могут возвращать неправильное значение согласно спецификации.
Вместо них предлагается использовать функции из заголовка VersionHelpers.h. Эти функции не реализованы в библиотеках WinAPI и всего лишь дают фасад для вызова VerifyVersionInfo. Функции из состава VersionHelpers.h имеют более привычное именование версий ОС в сравнении с GetVersion и GetVersionEx.
Если ваша программа запускается, но окно мигает и сразу закрывается
Некоторые IDE автоматически не приостанавливают экран консоли после завершения выполнения программы. Ваша программа запускается, но окно вывода закрывается, прежде чем вы сможете просмотреть результаты.
Если это так с вашей IDE, следующие два шага решат вашу проблему:
Сначала добавьте или убедитесь, что следующие строки находятся в верхней части вашей программы (пользователи Visual Studio должны убедиться, что эти строки появляются после или , если таковые существуют):
Во-вторых, добавьте следующий код в конец функции (непосредственно перед оператором ):
Это приведет к тому, что ваша программа будет ждать, пока пользователь нажмет какую-нибудь клавишу, прежде чем продолжить, что даст вам время изучить вывод вашей программы, прежде чем IDE закроет окно консоли.
Другие решения, такие как обычно предлагаемое , могут работать только в определенных операционных системах, и их следует избегать.
Ваш антивирус также может блокировать выполнение программы. В таком случае попробуйте временно отключить его и посмотреть, решится ли проблема.
Для пользователей Visual Studio
Visual Studio не будет в конце делать паузу в работе консольного приложения, если оно запускается с отладкой (меню Отладка (Debug) → Начать отладку (Start Debugging)). Если вы хотите, чтобы она сделала паузу, вы можете либо использовать приведенное выше решение с дополнительным кодом, либо запустить свою программу без отладки (меню Отладка (Debug) → Начать отладку (Start Without Debugging)).
Run VS Code in WSL
Navigate to your helloworld project folder and launch VS Code from the WSL terminal with :
You’ll see a message about «Installing VS Code Server». VS Code is downloading and installing a small server on the Linux side that the desktop VS Code will then talk to. VS Code will then start and open the folder. The File Explorer shows that VS Code is now running in the context of WSL with the title bar .
You can also tell the remote context from the Status bar.
If you click on the Remote Status bar item, you will see a dropdown of Remote commands appropriate for the session. For example, if you want to end your session running in WSL, you can select the Close Remote Connection command from the dropdown. Running from your WSL command prompt will restart VS Code running in WSL.
The code . command opened VS Code in the current working folder, which becomes your «workspace». As you go through the tutorial, you will see three files created in a folder in the workspace:
- (compiler path and IntelliSense settings)
- (build instructions)
- (debugger settings)
Создание проекта в Visual Studio 2019
Когда вы запустите Visual Studio 2019, вы должны увидеть диалоговое окно, которое выглядит следующим образом:
Рисунок 2 – Диалоговое окно «Начало работы» Visual Studio 2019
Выберите Создание проекта (Create a new project).
После этого вы увидите диалоговое окно, которое выглядит следующим образом:
Рисунок 3 – Visual Studio 2019: диалоговое окно создания нового проекта
Если вы уже открыли предыдущий проект, вы можете открыть это диалоговое окно через меню Файл (File) → Создать (New) → Проект (Project).
Выберите Мастер классических приложений Windows (Windows Desktop Wizard) и нажмите Далее (Next). Если вы этого не видите, то вы, вероятно, при установке Visual Studio забыли выбрать установку Desktop development with C++. В этом случае вернитесь к уроку «0.6 – Установка интегрированной среды разработки (IDE)» и переустановите Visual Studio, как было показано (примечание: вместо полной переустановки вы можете запустить установщик Visual Studio и изменить существующую установку, чтобы добавить поддержку C++).
Далее вы увидите диалоговое окно, которое выглядит следующим образом:
Рисунок 4 – Диалоговое окно настройки нового проекта Visual Studio 2019
Замените существующее имя проекта на HelloWorld.
Рекомендуется также установить флажок «Поместить решение и проект в одном каталоге» (Place solution and project in the same directory), поскольку это сокращает количество подкаталогов, создаваемых с каждым проектом.
Нажмите Создать (Create), чтобы продолжить.
Наконец, вы увидите последнее диалоговое окно:
Рисунок 5 – Диалоговое окно параметров проекта Visual Studio 2019
Убедитесь, что тип приложения установлен как Консольное приложение (.exe) (Console Application (.exe)), и что параметр Предкомпилированный заголовок (Precompiled Header) не выбран. Затем нажмите ОК.
Вы создали проект! Чтобы продолжить, перейдите в раздел ниже.
Создание проекта в Code::Blocks
Чтобы создать новый проект, перейдите в меню File (Файл) → New (Новый) → Project (Проект). Появится диалоговое окно, которое выглядит следующим образом:
Рисунок 10 – Code::Blocks. Диалоговое окно создания проекта
Выберите Console application (консольное приложение) и нажмите кнопку Go (перейти/создать).
Если вы видите диалоговое окно мастера консольного приложения, нажмите Next (далее), убедитесь, что выбран C++, и снова нажмите Next.
Теперь вам будет предложено назвать ваш проект. Назовите проект HelloWorld. Вы можете сохранить его где угодно. В Windows мы рекомендуем сохранить его в подкаталоге диска C, например C:\CBProjects.
Рисунок 11 – Code::Blocks. Диалогове окно сохранения проекта
Вы можете увидеть другое диалоговое окно с вопросом, какие конфигурации вы хотите включить. Значения по умолчанию здесь подойдут, поэтому выберите Finish.
Теперь ваш новый проект создан.
В левой части экрана вы должны увидеть окно Management (управление) с выбранной вкладкой Projects (проекты). Внутри этого окна вы увидите папку Workspace с вашим проектом HelloWorld внутри:
Рисунок 12 – Code::Blocks. Workspace
Внутри проекта HelloWorld разверните папку Sources (исходники) и дважды щелкните на «main.cpp». Вы увидите, что для вас уже написана программа hello world!
Замените ее следующим кодом:
Чтобы собрать проект, нажмите Ctrl + F9 или перейдите в меню Build (Сборка) → Build (Сборка). Если всё пойдет хорошо, вы должны увидеть следующее в окне журнала сборки:
Это означает, что компиляция прошла успешно!
Чтобы запустить скомпилированную программу, нажмите Ctrl + F10 или перейдите в меню Build (Сборка) → Run (Запуск). Вы увидите что-то похожее на следующий скриншот:
Рисунок 13 – Запуск программы
Это результат выполнения вашей программы!
Для пользователей Linux
Пользователям Linux до компиляции в Code::Blocks может потребоваться установить дополнительные пакеты. Дополнительные сведения смотрите в инструкциях по установке Code::Blocks в уроке «0.6 – Интегрированная среда разработки (IDE)».
Set up your Linux environment
-
Open the Bash shell for WSL. If you installed an Ubuntu distro, type «Ubuntu» in the Windows search box and then click on it in the result list. For Debian, type «Debian», and so on.
The shell appears with a command prompt that by default consists of your user name and computer name, and puts you in your home directory. For Ubuntu it looks like this:
-
Make a directory called and then subdirectory under that called :
-
Although you will be using VS Code to edit your source code, you’ll be compiling the source code on Linux using the g++ compiler. You’ll also debug on Linux using GDB. These tools are not installed by default on Ubuntu, so you have to install them. Fortunately, that task is quite easy!
-
From the WSL command prompt, first run to update the Ubuntu package lists. An out-of-date distro can sometimes interfere with attempts to install new packages.
If you like, you can run to also download the latest versions of the system packages, but this can take significantly longer depending on your connection speed.
-
From the command prompt, install the GNU compiler tools and the GDB debugger by typing:
-
Verify that the install succeeded by locating g++ and gdb. If the filenames are not returned from the command, try running the update command again.
Предварительные требования
Для прохождения этого обучающего модуля вам потребуется следующее:
- Локальный компьютер для разработки, работающий под управлением Windows, MacOSX или Linux. Данный обучающий модуль не предназначен для устройств под управлением ChromeOS.
- Среда разработки Visual Studio Code, которую вы можете загрузить и установить с официального сайта.
- Сгенерированная пара ключей SSH:
- Если вы используете macOS или Linux, то можете перейти к 1-му шагу модуля Настройка ключей SSH в Ubuntu 18.04. Команды аналогичны, т.ч. не беспокойтесь о том, что в обучающем руководстве говорится, что они предназначены для Ubuntu 18.04.
- Если вы используете Windows, пройдите обучающий модуль Создание ключей SSH с помощью PuTTY в Windows для создания ключа SSH.
- Если вы используете DigitalOcean, то можете использовать руководство Выгрузка открытых ключей SSH в учетную запись DigitalOcean.
- Один сервер Ubuntu 18.04, настроенный в соответствии с руководством по начальной настройке сервера Ubuntu 18.04, включая пользователя с разрешениями без прав root и брандмауэр.