Руководство. Публикация консольного приложения .NET с помощью Visual Studio
В этом руководстве показано, как опубликовать консольное приложение, чтобы его могли запускать другие пользователи. При публикации создается набор файлов, которые необходимы для запуска приложения. Чтобы развернуть файлы, скопируйте их на целевой компьютер.
Предварительные условия
- В этом руководстве используется консольное приложение, созданное в руководстве Создание консольного приложения .NET в Visual Studio.
Публикация приложения
- Запустите среду Visual Studio.
- Откройте проект HelloWorld, созданный по инструкциям из статьи Создание консольного приложения .NET в Visual Studio.
- Убедитесь, что в Visual Studio используется конфигурация сборки Release. При необходимости измените конфигурацию сборки на панели инструментов, указав конфигурацию Выпуск вместо конфигурации Отладка.
- Щелкните проект HelloWorld (не решение HelloWorld) правой кнопкой мыши и выберите Опубликовать.

- На вкладке Целевой объект на странице Публикация выберите Папка, а затем нажмите кнопку Далее.

- На вкладке Определенный целевой объект на странице Публикация выберите Папка, а затем нажмите кнопку Далее.

- На вкладке Расположение на странице Публикация нажмите кнопку Готово.

- На странице хода создания профиля публикации нажмите кнопку «Закрыть«.
- На вкладке Публикация в окне Публикация нажмите кнопку Опубликовать.

Проверка файлов
По умолчанию при публикации создается развертывание, зависящее от платформы. При таком развертывании опубликованное приложение выполняется на компьютере с установленной средой выполнения .NET. Пользователи могут запустить опубликованное приложение, дважды щелкнув исполняемый файл или выполнив команду dotnet HelloWorld.dll из командной строки.
В следующих шагах будут рассмотрены файлы, созданные в процессе публикации.

- В обозревателе решений выберите Показать все файлы.
- В папке проекта разверните bin/Release/net7.0/publish. Как показано на рисунке, опубликованные выходные данные включают следующие файлы:
- HelloWorld.deps.json Это файл зависимостей среды выполнения приложения. Он определяет библиотеки и компоненты .NET (включая библиотеку DLL, содержащую приложение), необходимые для запуска приложения. Дополнительные сведения см. в разделе Runtime Configuration Files (Файлы конфигурации среды выполнения).
- HelloWorld.dll Это версия зависимого от платформы развертывания приложения. Чтобы выполнить эту библиотеку динамической компоновки, введите dotnet HelloWorld.dll в командной строке. Этот метод запуска приложения работает на любой платформе, где установлена среда выполнения .NET.
- HelloWorld.exe Это версия исполняемого, зависящего от платформы файла приложения. Чтобы запустить его, введите HelloWorld.exe в командной строке. Файл зависит от операционной системы.
- HelloWorld.pdb (необязателен для развертывания) Это файл отладочных символов. Этот файл не нужно распространять вместе с приложением, но желательно сохранить его на случай, если придется выполнять отладку опубликованной версии приложения.
- HelloWorld.runtimeconfig.json Это файл конфигурации среды выполнения приложения. Он определяет версию платформы .NET, для которой предназначено приложение. Кроме того, в него можно добавить параметры конфигурации. Дополнительные сведения см. в статье Параметры конфигурации среды выполнения .NET.
Запуск опубликованного приложения
- В обозревателе решений щелкните папку publish правой кнопкой мыши и выберите команду Копировать полный путь.
- Откройте командную строку и перейдите к папке publish. Для этого введите cd и вставьте полный путь. Например:
cd C:\Projects\HelloWorld\bin\Release\net8.0\publish\
- Введите HelloWorld.exe и нажмите клавишу ВВОД .
- В ответ на запрос введите имя и нажмите любую клавишу, чтобы выйти.
- Введите dotnet HelloWorld.dll и нажмите клавишу ВВОД .
- В ответ на запрос введите имя и нажмите любую клавишу, чтобы выйти.
Дополнительные ресурсы
- Развертывание приложений .NET
- Публикация приложений .NET с помощью интерфейса командной строки
- dotnet publish
- Руководство. Публикация консольного приложения .NET с помощью Visual Studio Code
- Использование пакета SDK для .NET в средах непрерывной интеграции (CI)
Далее
В этом руководстве вы опубликовали консольное приложение. Далее вы создадите библиотеку классов.
В этом руководстве показано, как опубликовать консольное приложение, чтобы его могли запускать другие пользователи. При публикации создается набор файлов, которые необходимы для запуска приложения. Чтобы развернуть файлы, скопируйте их на целевой компьютер.
Предварительные условия
- В этом руководстве используется консольное приложение, созданное в руководстве Создание консольного приложения .NET в Visual Studio.
Публикация приложения
- Запустите среду Visual Studio.
- Откройте проект HelloWorld, созданный по инструкциям из статьи Создание консольного приложения .NET в Visual Studio.
- Убедитесь, что в Visual Studio используется конфигурация сборки Release. При необходимости измените конфигурацию сборки на панели инструментов, указав конфигурацию Выпуск вместо конфигурации Отладка.

- Щелкните проект HelloWorld (не решение HelloWorld) правой кнопкой мыши и выберите Опубликовать.

- На вкладке Целевой объект на странице Публикация выберите Папка, а затем нажмите кнопку Далее.

- На вкладке Определенный целевой объект на странице Публикация выберите Папка, а затем нажмите кнопку Далее.

- На вкладке Расположение на странице Публикация нажмите кнопку Готово.

- На странице хода создания профиля публикации нажмите кнопку «Закрыть«.
- На вкладке Публикация в окне Публикация нажмите кнопку Опубликовать.

Проверка файлов
По умолчанию при публикации создается развертывание, зависящее от платформы. При таком развертывании опубликованное приложение выполняется на компьютере с установленной средой выполнения .NET. Пользователи могут запустить опубликованное приложение, дважды щелкнув исполняемый файл или выполнив команду dotnet HelloWorld.dll из командной строки.
В следующих шагах будут рассмотрены файлы, созданные в процессе публикации.

- В обозревателе решений выберите Показать все файлы.
- В папке проекта разверните bin/Release/net7.0/publish. Как показано на рисунке, опубликованные выходные данные включают следующие файлы:
- HelloWorld.deps.json Это файл зависимостей среды выполнения приложения. Он определяет библиотеки и компоненты .NET (включая библиотеку DLL, содержащую приложение), необходимые для запуска приложения. Дополнительные сведения см. в разделе Runtime Configuration Files (Файлы конфигурации среды выполнения).
- HelloWorld.dll Это версия зависимого от платформы развертывания приложения. Чтобы выполнить эту библиотеку динамической компоновки, введите dotnet HelloWorld.dll в командной строке. Этот метод запуска приложения работает на любой платформе, где установлена среда выполнения .NET.
- HelloWorld.exe Это версия исполняемого, зависящего от платформы файла приложения. Чтобы запустить его, введите HelloWorld.exe в командной строке. Файл зависит от операционной системы.
- HelloWorld.pdb (необязателен для развертывания) Это файл отладочных символов. Этот файл не нужно распространять вместе с приложением, но желательно сохранить его на случай, если придется выполнять отладку опубликованной версии приложения.
- HelloWorld.runtimeconfig.json Это файл конфигурации среды выполнения приложения. Он определяет версию платформы .NET, для которой предназначено приложение. Кроме того, в него можно добавить параметры конфигурации. Дополнительные сведения см. в статье Параметры конфигурации среды выполнения .NET.
Запуск опубликованного приложения
- В обозревателе решений щелкните папку publish правой кнопкой мыши и выберите команду Копировать полный путь.
- Откройте командную строку и перейдите к папке publish. Для этого введите cd и вставьте полный путь. Например:
cd C:\Projects\HelloWorld\bin\Release\net7.0\publish\
- Введите HelloWorld.exe и нажмите клавишу ВВОД .
- В ответ на запрос введите имя и нажмите любую клавишу, чтобы выйти.
- Введите dotnet HelloWorld.dll и нажмите клавишу ВВОД .
- В ответ на запрос введите имя и нажмите любую клавишу, чтобы выйти.
Дополнительные ресурсы
- Развертывание приложений .NET
- Публикация приложений .NET с помощью интерфейса командной строки
- dotnet publish
- Руководство. Публикация консольного приложения .NET с помощью Visual Studio Code
- Использование пакета SDK для .NET в средах непрерывной интеграции (CI)
Далее
В этом руководстве вы опубликовали консольное приложение. Далее вы создадите библиотеку классов.
В этом руководстве показано, как опубликовать консольное приложение, чтобы его могли запускать другие пользователи. При публикации создается набор файлов, которые необходимы для запуска приложения. Чтобы развернуть файлы, скопируйте их на целевой компьютер.
Предварительные условия
- В этом руководстве используется консольное приложение, созданное в руководстве Создание консольного приложения .NET в Visual Studio.
Публикация приложения
- Запустите среду Visual Studio.
- Откройте проект HelloWorld, созданный по инструкциям из статьи Создание консольного приложения .NET в Visual Studio.
- Убедитесь, что в Visual Studio используется конфигурация сборки Release. При необходимости измените конфигурацию сборки на панели инструментов, указав конфигурацию Выпуск вместо конфигурации Отладка.

- Щелкните проект HelloWorld (не решение HelloWorld) правой кнопкой мыши и выберите Опубликовать.

- На вкладке Целевой объект на странице Публикация выберите Папка, а затем нажмите кнопку Далее.

- На вкладке Определенный целевой объект на странице Публикация выберите Папка, а затем нажмите кнопку Далее.

- На вкладке Расположение на странице Публикация нажмите кнопку Готово.

- На вкладке Публикация в окне Публикация нажмите кнопку Опубликовать.

Проверка файлов
По умолчанию при публикации создается развертывание, зависящее от платформы. При таком развертывании опубликованное приложение выполняется на компьютере с установленной средой выполнения .NET. Пользователи могут запустить опубликованное приложение, дважды щелкнув исполняемый файл или выполнив команду dotnet HelloWorld.dll из командной строки.
В следующих шагах будут рассмотрены файлы, созданные в процессе публикации.

- В обозревателе решений выберите Показать все файлы.
- В папке проекта разверните bin/Release/net6.0/publish. Как показано на рисунке, опубликованные выходные данные включают следующие файлы:
- HelloWorld.deps.json Это файл зависимостей среды выполнения приложения. Он определяет библиотеки и компоненты .NET (включая библиотеку DLL, содержащую приложение), необходимые для запуска приложения. Дополнительные сведения см. в разделе Runtime Configuration Files (Файлы конфигурации среды выполнения).
- HelloWorld.dll Это версия зависимого от платформы развертывания приложения. Чтобы выполнить эту библиотеку динамической компоновки, введите dotnet HelloWorld.dll в командной строке. Этот метод запуска приложения работает на любой платформе, где установлена среда выполнения .NET.
- HelloWorld.exe Это версия исполняемого, зависящего от платформы файла приложения. Чтобы запустить его, введите HelloWorld.exe в командной строке. Файл зависит от операционной системы.
- HelloWorld.pdb (необязателен для развертывания) Это файл отладочных символов. Этот файл не нужно распространять вместе с приложением, но желательно сохранить его на случай, если придется выполнять отладку опубликованной версии приложения.
- HelloWorld.runtimeconfig.json Это файл конфигурации среды выполнения приложения. Он определяет версию платформы .NET, для которой предназначено приложение. Кроме того, в него можно добавить параметры конфигурации. Дополнительные сведения см. в статье Параметры конфигурации среды выполнения .NET.
Запуск опубликованного приложения
- В обозревателе решений щелкните папку publish правой кнопкой мыши и выберите команду Копировать полный путь.
- Откройте командную строку и перейдите к папке publish. Для этого введите cd и вставьте полный путь. Например:
cd C:\Projects\HelloWorld\bin\Release\net6.0\publish\
- Введите HelloWorld.exe и нажмите клавишу ВВОД .
- В ответ на запрос введите имя и нажмите любую клавишу, чтобы выйти.
- Введите dotnet HelloWorld.dll и нажмите клавишу ВВОД .
- В ответ на запрос введите имя и нажмите любую клавишу, чтобы выйти.
Дополнительные ресурсы
- Развертывание приложений .NET
- Публикация приложений .NET с помощью интерфейса командной строки
- dotnet publish
- Руководство. Публикация консольного приложения .NET с помощью Visual Studio Code
- Использование пакета SDK для .NET в средах непрерывной интеграции (CI)
Далее
В этом руководстве вы опубликовали консольное приложение. Далее вы создадите библиотеку классов.
Руководство. Отладка кода C++ с помощью Visual Studio
Область применения:
Visual Studio Visual Studio для Mac
Visual Studio Code ![]()
В этом пошаговом руководстве рассматриваются возможности отладчика Visual Studio. Более полное описание функций отладчика см. в статье c Знакомство с отладчиком Visual Studio. Отладка приложения обычно означает запуск и выполнение приложения с подключенным отладчиком. При этом в отладчике доступно множество способов наблюдения за выполнением кода. Вы можете пошагово перемещаться по коду и просматривать значения, хранящиеся в переменных, задавать контрольные значения для переменных, чтобы отслеживать изменение значений, изучать путь выполнения кода, просматривать выполнение ветви кода и т. д. Если вы не знакомы с процессом отладки, перед выполнением задач в этой статье рекомендуется прочесть документ об отладке для начинающих.
Несмотря на то, что демонстрационное приложение написано на C++, большинство функций применимы к C#, Visual Basic, F#, Python, JavaScript и другим языкам, поддерживаемым Visual Studio (F# не поддерживает возможность «Изменить и продолжить». F# и JavaScript не поддерживают окно Видимые). Снимки экрана приведены для C++.
При работе с этим руководством вы сделаете следующее:
- Запуск отладчика и попадание в точки останова.
- Использование команд для пошагового выполнения кода в отладчике.
- Проверка переменных в подсказках к данным и окнах отладчика.
- Изучение стека вызовов
Необходимые компоненты
У вас должна быть установлена среда Visual Studio и рабочая нагрузка Разработка классических приложений на C++.
Установите Visual Studio бесплатно со страницы скачиваемых материалов Visual Studio, если еще не сделали этого.
Установите Visual Studio 2022 бесплатно со страницы скачиваемых материалов Visual Studio 2022, если еще не сделали этого.
Если вам нужно установить рабочую нагрузку, но вы уже используете Visual Studio, выберите пункт Средства>Получить средства и компоненты. , после чего запустится Visual Studio Installer. Запускается Visual Studio Installer. Выберите рабочую нагрузку Разработка классических приложений на C++, а затем нажмите Изменить.
Создание проекта
Сначала вы создадите проект консольного приложения на C++. Для этого типа проекта уже имеются все нужные файлы шаблонов, что избавляет вас от лишней работы.
- Откройте Visual Studio. Если окно запуска не открыто, выберите Файл>Окно запуска.
- На начальном экране выберите Создать проект.
- В поле поиска окна Создание проекта введите консоль. Затем выберите C++ в списке языков и Windows в списке платформ. Применив фильтры языка и платформы, выберите шаблон Консольное приложение и нажмите кнопку Далее.


Примечание. Если шаблон Консольное приложение отсутствует, его можно установить из окна Создание проекта. В сообщении Не нашли то, что искали? выберите ссылку Установка других средств и компонентов. После этого в Visual Studio Installer выберите рабочую нагрузку Разработка классических приложений на C++.
Создание приложения
- Откройте файл get-started-debugging.cpp и замените все его содержимое по умолчанию следующим кодом:
#include #include #include void SendMessage(const std::wstring& name, int msg) < std::wcout int main() < std::vectorletters = < L'f', L'r', L'e', L'd', L' ', L's', L'm', L'i', L't', L'h' >; std::wstring name = L""; std::vector a(10); std::wstring key = L""; for (int i = 0; i < letters.size(); i++) < name += letters[i]; a[i] = i + 1; SendMessage(name, a[i]); >std::wcin >> key; return 0; >
Запуск отладчика

- Нажмите клавишу F5 (Отладка > Начать отладку) или кнопку Начать отладкуна панели инструментов отладки. При нажатии клавиши F5 происходит запуск приложения с присоединенным отладчиком. Но пока мы не сделали ничего особенного, чтобы проанализировать код. Поэтому приложение будет просто загружено, и вы увидите выходные данные консоли.
Hello, f! Count to 1 Hello, fr! Count to 2 Hello, fre! Count to 3 Hello, fred! Count to 4 Hello, fred ! Count to 5 Hello, fred s! Count to 6 Hello, fred sm! Count to 7 Hello, fred smi! Count to 8 Hello, fred smit! Count to 9 Hello, fred smith! Count to 10

В этом руководстве мы более подробно рассмотрим приложение с отладчиком и познакомимся с возможностями отладчика.
Установка точки останова и запуск отладчика
- В цикле for функции main установите точку останова, щелкнув левое поле следующей строки кода: name += letters[i]; В месте установки точки останова появится красный круг
. Точки останова — это один из самых простых и важных компонентов надежной отладки. Точка останова указывает, где Visual Studio следует приостановить выполнение кода, чтобы вы могли проверить значения переменных или поведение памяти либо выполнение ветви кода. - Нажмите клавишу F5 или кнопку Начать отладку
. Приложение запустится и отладчик перейдет к строке кода, где задана точка останова.
Желтая стрелка представляет оператор, на котором приостановлен отладчик. В этой же точке приостанавливается выполнение приложения (этот оператор пока не выполнен). Если приложение еще не запущено, клавиша F5 запускает отладчик и останавливается в первой точке останова. В противном случае F5 продолжает выполнение приложения до следующей точки останова. Точки останова полезны, если вам известны строка или раздел кода, которые вы хотите подробно рассмотреть. Дополнительные сведения о различных типах точек останова, которые можно задать, например об условных точках останова, см. в разделе Использование точек останова.
Переход по коду в отладчике с помощью пошаговых команд
Здесь мы используем в основном сочетания клавиш, так как они позволяют быстро выполнять приложение в отладчике (эквивалентные команды, например команды меню, отображаются в круглых скобках).
- Во время приостановки в цикле for в методе main дважды нажмите клавишу F11 (или выберите Отладка > Шаг с заходом), чтобы перейти к вызову метода SendMessage . После двойного нажатия клавиши F11 вы должны находиться на следующей строке кода: SendMessage(name, a[i]);
- Еще раз нажмите клавишу F11, чтобы выполнить шаг с заходом в метод SendMessage . Желтый указатель перемещается в метод SendMessage .
F11 — это команда Шаг с заходом, которая выполняет приложение с переходом к следующему оператору. Клавишу F11 удобно использовать для более детальной проверки потока выполнения. (Чтобы ускорить перемещение по коду, мы также показываем некоторые другие варианты.) По умолчанию отладчик пропускает код, отличный от пользователя (если требуется дополнительные сведения, см . только мой код). Предположим, что вы закончили изучать метод SendMessage и хотите выйти из него, но остаться в отладчике. Это можно сделать с помощью команды Шаг с выходом. - Нажмите клавиши SHIFT + F11 (или выберите Отладка > Шаг с выходом). Эта команда возобновляет выполнение приложения (и работу отладчика) до возврата данных текущим методом или текущей функции. Вы должны вернуться в цикл for в методе main , приостановленный на вызове метода SendMessage .
- Нажмите клавишу F11 несколько раз, пока не вернетесь к вызову метода SendMessage .
- Во время приостановки на вызове метода один раз нажмите клавишу F10 (или выберите Отладка > Шаг с обходом).
Обратите внимание, что в этот раз отладчик не заходит в метод SendMessage . Клавиша F10 перемещает отладчик без захода в функции или методы в коде приложения (код продолжает выполняться). Нажав клавишу F10 (а не F11) в вызове метода SendMessage , мы пропускаем код реализации для SendMessage (пока это нас не интересует). Дополнительные сведения о различных способах перемещения по коду см. в разделе Навигация по коду в отладчике.
Переход по коду с помощью команды «Выполнение до щелкнутого»
- Нажмите клавишу F5, чтобы перейти к точке останова.
- В редакторе кода прокрутите вниз и наведите указатель мыши на std::wcout функцию в SendMessage методе, пока зеленая кнопка «Запустить, чтобы щелкнуть »
слева. В подсказке для кнопки выводится «Выполнить до этого места». 
Примечание. Кнопка Выполнение до щелкнутого впервые появилась в Visual Studio 2017. (Если кнопка с зеленой стрелкой отсутствует, воспользуйтесь клавишей F11, чтобы переместить отладчик в нужное место.)

Быстрый перезапуск приложения

Щелкните кнопку Перезапустить на панели инструментов отладки (CTRL + SHIFT + F5).
Кнопка Перезапустить позволяет сэкономить время, затрачиваемое на остановку приложения и перезапуск отладчика. Отладчик приостанавливается в первой точке останова, достигнутой при выполнении кода.
Отладчик еще раз останавливается в точке останова, ранее заданной вами в цикле for .
Проверка переменных с помощью подсказок по данным
Функции, позволяющие проверять переменные, являются самыми полезными возможностями отладчика. Реализовывать эту задачу можно разными способами. Часто при попытке выполнить отладку проблемы пользователь старается выяснить, хранятся ли в переменных значения, которые требуются ему в определенное время.

- При приостановке на операторе name += letters[i] наведите указатель мыши на переменную letters и увидите ее значение по умолчанию — size= .
- Разверните переменную letters , чтобы просмотреть ее свойства, включая все элементы, которые она содержит.
- Затем наведите указатель мыши на переменную name , чтобы просмотреть ее текущее значение — пустую строку.
- Несколько раз нажмите клавишу F5 (или выберите Отладка>Продолжить), чтобы выполнить несколько итераций по циклу for , каждый раз снова приостанавливая выполнение в точке останова и наводя указатель мыши на переменную name , чтобы просмотреть ее значение. Значение переменной изменяется при каждой итерации цикла for — f , затем fr , fre и т. д. Часто при отладке требуется быстро проверить значения свойств в переменных, чтобы убедиться, что в них хранятся ожидаемые значения. Советы по данным — отличный способ это сделать.
Проверка переменных с помощью окон «Видимые» и «Локальные»
- Взгляните на окно Видимые в нижней части редактора кода. Если оно закрыто, откройте его во время приостановки в отладчике, выбрав Отладка>Окна>Видимые. В окне Видимые отображаются переменные и их текущие значения. В окне Видимые отображаются все переменные, используемые в текущей или предыдущей строке (сведения о зависящем от языка поведении см. в соответствующей документации).
- Затем посмотрите на окно Локальные на вкладке рядом с окном Видимые.
- Разверните переменную letters , чтобы отобразить элементы, которые она содержит.


Установка контрольного значения
- В основном окне редактора кода щелкните правой кнопкой мыши переменную name и выберите команду Добавить контрольное значение. В нижней части редактора кода откроется окно Контрольное значение. В окне Контрольное значение можно указать переменную (или выражение), которую необходимо отслеживать. Теперь у вас есть контрольное значение, заданное для переменной name , и по мере перемещения по отладчику вы можете наблюдать за изменением его значения. В отличие от других окон переменных, в окне Контрольное значение всегда отображаются просматриваемые вами переменные (они выделяются серым цветом, когда находятся вне области действия).
Изучение стека вызовов
- Во время приостановки в цикле for щелкните окно Стек вызовов, которое по умолчанию открыто в нижней правой области. Если оно закрыто, откройте его во время приостановки в отладчике, выбрав Отладка>Окна>Стек вызовов.
- Несколько раз нажмите клавишу F11, пока отладчик не приостановится в методе SendMessage . Взгляните на окно Стек вызовов.


В окне Стек вызовов показан порядок вызова методов и функций. В верхней строке приведена текущая функция (в данном приложении метод SendMessage ). Во второй строке показано, что функция SendMessage была вызвана из метода main и т. д.
Примечание. Окно Стек вызовов аналогично перспективе «Отладка» в некоторых интегрированных средах разработки, например Eclipse.
Изменение потока выполнения
- Дважды нажмите клавишу F11, чтобы запустить функцию std::wcout .
- Приостановив отладчик в вызове метода SendMessage , с помощью мыши захватите желтую стрелку (указатель выполнения) в левой части и переместите ее вверх на одну строку — обратно в std::wcout .
- Нажмите клавишу F11. Отладчик повторно выполнит функцию std::wcout (вы увидите это в выходных данных окна консоли). Изменяя поток выполнения, можно решать множество задач, например тестировать различные пути выполнения кода или повторно выполнять код без перезапуска отладчика.
Предупреждение Как правило, при работе с этой функцией необходимо соблюдать осторожность — вы увидите соответствующее предупреждение во всплывающей подсказке. Могут отображаться и другие предупреждения. При перемещении указателя предыдущее состояние приложения не возвращается.
Следующие шаги
В этом руководстве вы узнали, как запускать отладчик, осуществлять пошаговое выполнение кода и проверять переменные. Возможно, вы захотите получить более полное представление о функциях отладчика, а также воспользоваться ссылками на дополнительные сведения.
Руководство. Отладка кода C# с помощью Visual Studio
Область применения:
Visual Studio Visual Studio для Mac
Visual Studio Code ![]()
В этом пошаговом руководстве рассматриваются возможности отладчика Visual Studio. Более полное описание функций отладчика см. в статье c Знакомство с отладчиком Visual Studio. При отладке приложения обычно это означает, что приложение запущено с подключенным отладчиком. При выполнении этой задачи отладчик предоставляет множество способов узнать, что делает ваш код во время выполнения. Вы можете пошагово перемещаться по коду и просматривать значения, хранящиеся в переменных, задавать контрольные значения для переменных, чтобы отслеживать изменение значений, изучать путь выполнения кода, просматривать выполнение ветви кода и т. д. Если это упражнение впервые вы пытались отладить код, вам может потребоваться прочитать отладку для абсолютных начинающих , прежде чем пройти эту статью.
Хотя демонстрационное приложение — C#, большинство функций применимы к C++, Visual Basic, F#, Python, JavaScript и другим языкам, поддерживаемым Visual Studio (F#, не поддерживает редактирование и продолжение). F# и JavaScript не поддерживают окно «Автозапись «). На снимках экрана представлены примеры на C#.
При работе с этим руководством вы сделаете следующее:
- Запуск отладчика и попадание в точки останова.
- Использование команд для пошагового выполнения кода в отладчике.
- Проверка переменных в подсказках к данным и окнах отладчика.
- Изучение стека вызовов
Необходимые компоненты
У вас должна быть установлена среда Visual Studio 2022 и рабочая нагрузка Разработка классических приложений .NET.
У вас должна быть установлена среда Visual Studio 2019 и рабочая нагрузка Кроссплатформенная разработка .NET Core.
Установите Visual Studio бесплатно со страницы скачиваемых материалов Visual Studio, если еще не сделали этого.
Если вам нужно установить рабочую нагрузку, но вы уже используете Visual Studio, выберите пункт Средства>Получить средства и компоненты. , после чего запустится Visual Studio Installer. Запускается Visual Studio Installer. Выберите рабочую нагрузку Кроссплатформенная разработка .NET Core и затем элемент Изменить.
Если у вас уже есть Visual Studio, но не установлена рабочая нагрузка Разработка классических приложений .NET, выберите Средства>Получить средства и возможности. После выполнения этих действий запустится Visual Studio Installer. Затем в Visual Studio Installer выберите рабочую нагрузку Разработка классических приложений .NET, а затем — Изменить.
Создание проекта
Сначала вы создадите проект консольного приложения .NET Core. Для этого типа проекта уже имеются все нужные файлы шаблонов, что избавляет вас от лишней работы.
- Откройте Visual Studio. Если окно запуска не открыто, выберите окно «Пуск файла>«.
- В окне запуска выберите Создание нового проекта.

- В окне создания проекта введите консоль в поле поиска. Затем выберите C# в списке языков и Windows в списке платформ. После применения фильтров языка и платформы выберите шаблон консольного приложения для .NET Core и нажмите кнопку «Далее«.
Примечание. Если шаблон Консольное приложение отсутствует, его можно установить из окна Создание проекта. В сообщении Не нашли то, что искали? выберите ссылку Установка других средств и компонентов. После этого в Visual Studio Installer выберите рабочую нагрузку Кроссплатформенная разработка .NET Core.

- В окне создания проекта введите консоль в поле поиска. Затем выберите C# в списке языков и Windows в списке платформ. После применения фильтров языка и платформы выберите шаблон консольного приложения и нажмите кнопку «Далее«.
Примечание. Если шаблон консольного приложения не отображается, его можно установить в окне создания проекта . В сообщении Не нашли то, что искали? выберите ссылку Установка других средств и компонентов. После этого в Visual Studio Installer выберите рабочую нагрузку Разработка классических приложений .NET.
Новый проект открывается в Visual Studio.
Создание приложения
В файле Program.cs замените все его содержимое по умолчанию следующим кодом:
using System; class ArrayExample < static void Main() < char[] letters = < 'f', 'r', 'e', 'd', ' ', 's', 'm', 'i', 't', 'h'>; string name = ""; int[] a = new int[10]; for (int i = 0; i < letters.Length; i++) < name += letters[i]; a[i] = i + 1; SendMessage(name, a[i]); >Console.ReadKey(); > static void SendMessage(string name, int msg) < Console.WriteLine("Hello, " + name + "! Count to " + msg); >>
Запуск отладчика

- Нажмите клавишу F5 (Отладка > Начать отладку) или кнопку Начать отладкуна панели инструментов отладки. При нажатии клавиши F5 происходит запуск приложения с присоединенным отладчиком. Но пока мы не сделали ничего особенного, чтобы проанализировать код. Таким образом, приложение просто загружается, и вы видите эти выходные данные консоли.
Hello, f! Count to 1 Hello, fr! Count to 2 Hello, fre! Count to 3 Hello, fred! Count to 4 Hello, fred ! Count to 5 Hello, fred s! Count to 6 Hello, fred sm! Count to 7 Hello, fred smi! Count to 8 Hello, fred smit! Count to 9 Hello, fred smith! Count to 10

В этом руководстве вы внимательно изучите это приложение с помощью отладчика и ознакомьтесь с функциями отладчика.
В основном мы используем сочетания клавиш, поскольку так быстрее выполнять команды отладчика. Кроме того, указаны эквивалентные команды, такие как команды панели инструментов или меню.

-
Чтобы запустить отладчик, нажмите клавишу F5 или кнопку Целевой объект отладки на стандартной панели инструментов, или же нажмите кнопку Начать отладку на панели инструментов «Отладка» или выберите Отладка >Начать отладку в строке меню. Клавиша F5 запускает приложение с прикрепленным к процессу приложения отладчиком. Так как специально для изучения кода ничего сделано не было, приложение будет выполняться до завершения и появятся выходные данные консоли.
Hello, f! Count to 1 Hello, fr! Count to 2 Hello, fre! Count to 3 Hello, fred! Count to 4 Hello, fred ! Count to 5 Hello, fred s! Count to 6 Hello, fred sm! Count to 7 Hello, fred smi! Count to 8 Hello, fred smit! Count to 9 Hello, fred smith! Count to 10

Установка точки останова и запуск отладчика
- for В цикле Main функции установите точку останова, щелкнув левое поле в следующей строке кода: name += letters[i]; В месте установки точки останова появится красный круг
. Точки останова — это один из самых простых и важных компонентов надежной отладки. Точка останова указывает, где Visual Studio следует приостановить выполнение кода, чтобы вы могли проверить значения переменных или поведение памяти либо выполнение ветви кода. - Нажмите клавишу F5 или кнопку «Начать отладку «.
Приложение запускается, а отладчик выполняется в строке кода, в которой устанавливается точка останова. Желтая стрелка представляет инструкцию, на которой отладчик приостановлен, который также приостанавливает выполнение приложения в той же точке (эта инструкция еще не выполнена). Если приложение еще не запущено, F5 запускает отладчик и останавливается в первой точке останова. В противном случае F5 продолжает выполнение приложения до следующей точки останова. Точки останова полезны, если вам известны строка или раздел кода, которые вы хотите подробно рассмотреть. Дополнительные сведения о различных типах точек останова, которые можно задать, например об условных точках останова, см. в разделе Использование точек останова.
- for В цикле Main функции установите точку останова, щелкнув левое поле в следующей строке кода: name += letters[i]; В месте установки точки останова появится красный круг .
Точки останова — это важные компоненты надежной отладки. Точки останова можно установить там, где Visual Studio следует приостановить выполнение кода, чтобы вы могли проверить значения переменных или поведение памяти либо выполнение ветви кода. - Чтобы запустить отладку, нажмите клавишу F5 или кнопку Целевой объект отладки на стандартной панели инструментов, или же нажмите кнопку Начать отладку на панели инструментов «Отладка» или выберите Отладка >Начать отладку в строке меню. Будет запущено приложение, и отладчик перейдет к строке кода, где задана точка останова.
Желтая стрелка указывает на оператора, на котором приостановлен отладчик. Выполнение приложения приостановлено в той же точке, но оператор еще не выполнен. Если приложение не запущено, F5 запускает отладчик, который запускает приложение, пока не достигнет первой точки останова. Если приложение приостановлено в точке останова, нажав клавишу F5, можно продолжить выполнение приложения, пока оно не достигнет следующей точки останова. Точки останова будут полезны, если вам известны строка или раздел кода, поэтому изучите их подробно. Дополнительные сведения о различных типах точек останова, которые можно задать, например об условных точках останова, см. в этом разделе.
Навигация по коду и проверка данных с помощью подсказок по данным
Здесь мы используем в основном сочетания клавиш, так как они позволяют быстро выполнять приложение в отладчике (эквивалентные команды, например команды меню, отображаются в круглых скобках).
- Хотя выполнение кода приостановлено в name += letters[i] инструкции, наведите указатель мыши на letters переменную и увидите его значение по умолчанию, значение первого элемента в массиве. char[10] Функции, позволяющие проверять переменные, являются самыми полезными возможностями отладчика. Реализовывать эту задачу можно разными способами. Часто при попытке отладки проблемы вы пытаетесь выяснить, хранят ли переменные значения, которые они ожидают, в определенное время.
- Разверните переменную letters , чтобы просмотреть ее свойства, включая все элементы, которые она содержит.

- Затем наведите указатель мыши на переменную name , чтобы просмотреть ее текущее значение — пустую строку.
- Нажмите клавишу F10 (или выберите Отладка > Шаг с обходом) дважды, чтобы перейти к вызову метода SendMessage , а затем еще раз нажмите клавишу F10. При нажатии клавиши F10 отладчик переходит к следующей инструкции без захода в функции или методы в коде приложения (код продолжает выполняться). Нажимая клавишу F10 в вызове метода SendMessage , мы пропускаем код реализации для SendMessage (который нас пока не интересует).
- Несколько раз нажмите клавишу F10 (или выберите Отладка>Шаг с обходом), чтобы выполнить несколько итераций по циклу for , каждый раз снова приостанавливая выполнение в точке останова и наводя указатель мыши на переменную name , чтобы просмотреть ее значение. Значение переменной изменяется при каждой итерации цикла for — f , затем fr , fre и т. д. Для более быстрого прохода по циклу в этом сценарии можно нажать клавишу F5 (или выбрать Отладка>Продолжить), чтобы перейти к точке останова, а не к следующей инструкции. Часто при отладке требуется быстрый способ проверка значений свойств в переменных, чтобы узнать, хранят ли они значения, которые вы ожидаете хранить, и советы по данным являются хорошим способом для этого.
- Хотя выполнение кода остается приостановленным в for цикле в методе Main , нажимайте клавишу F11 (или выберите «Шаг отладки>») до тех пор, пока не приостанавливается вызов SendMessage метода. Вы должны находиться в следующей строке кода: SendMessage(name, a[i]);
- Еще раз нажмите клавишу F11, чтобы выполнить шаг с заходом в метод SendMessage . Желтый указатель перемещается в метод SendMessage .
F11 — это команда Шаг с заходом, которая выполняет приложение с переходом к следующему оператору. Клавишу F11 удобно использовать для более детальной проверки потока выполнения. По умолчанию отладчик пропускает неиспользуемый код (если требуется дополнительные сведения, см . только мой код). Предположим, что вы закончите изучение SendMessage метода, и вы хотите выйти из метода, но остаться в отладчике. Это можно сделать с помощью команды Шаг с выходом. - Нажмите клавиши SHIFT + F11 (или выберите Отладка > Шаг с выходом). Эта команда возобновляет выполнение приложения (и работу отладчика) до возврата данных текущим методом или текущей функции. Вы должны вернуться в цикл for в методе Main , приостановленный на вызове метода SendMessage . Дополнительные сведения о различных способах перемещения по коду см. в разделе Навигация по коду в отладчике.
- Пока выполнение кода приостановлено в name += letters[i] инструкции, наведите указатель мыши на letters переменную, чтобы увидеть подсказку данных, показывающую размер массива и тип элемента. char[10]
Примечание. Одной из наиболее полезных возможностей отладчика является его способность проверять переменную. Часто при попытке выполнить отладку после возникновения проблемы пользователь старается выяснить, содержат ли переменные значения, которые требуются ему в определенное время. Хорошим способом проверить это является просмотр подсказок по данным.

Значение переменной изменяется при каждой итерации цикла for — f , затем fr , fre и т. д. Чтобы ускорить работу отладчика при прохождении цикла, взамен нажмите клавишу F5 и перейдите к вашей точке останова вместо следующего оператора.
Нажав клавишу F11, вы сможете более подробно изучить поток выполнения кода. Чтобы выполнить шаг с заходом в метод из вызова метода, нажмите клавишу F11. По умолчанию отладчик пропускает шаг в неиспользуемые методы. Дополнительные сведения об отладке неиспользуемого кода см. в разделе «Просто мой код». После завершения отладки метода SendMessage можно вернуться к циклу for метода main .Переход по коду с помощью команды «Выполнение до щелкнутого»
- Нажмите клавишу F5, чтобы снова перейти к точке останова.
- В редакторе кода прокрутите экран вниз и наведите указатель мыши на метод в SendMessage методе, пока не появится зеленая кнопка
«Запустить к щелчку«. Console.WriteLine Подсказка для кнопки показывает «Выполнить выполнение здесь». 
Примечание. Кнопка Выполнение до щелкнутого впервые появилась в Visual Studio 2017. (Если кнопка с зеленой стрелкой отсутствует, воспользуйтесь клавишей F11, чтобы переместить отладчик в нужное место.)


- Нажмите клавишу F5, чтобы снова перейти к точке останова.
- В редакторе кода наведите указатель мыши на Console.WriteLine вызов метода в SendMessage методе, пока не появится кнопка «Выполнить к нажатию «. Подсказка для кнопки показывает «Выполнить выполнение здесь».
- Нажмите на кнопку Выполнение до щелчка. Кроме того, вы можете навести курсор на оператор Console.WriteLine и нажать сочетание клавиш Ctrl+F10. Другим способом щелкните вызов метода Console.WriteLine правой кнопкой мыши и выберите в контекстном меню пункт Выполнение до текущей позиции. Отладчик перемещается к вызову метода Console.WriteLine . Использование кнопки Выполнение до щелчка аналогично настройке временной точки останова и удобно для быстрого обхода в видимой области кода приложения в открытом файле.
Быстрый перезапуск приложения

Нажмите кнопку «Перезапустить« на панели инструментов отладки (CTRL + SHIFT + F5).
Кнопка Перезапустить позволяет сэкономить время, затрачиваемое на остановку приложения и перезапуск отладчика. Отладчик приостанавливается в первой точке останова, достигнутой при выполнении кода.
Отладчик еще раз останавливается в точке останова, ранее заданной вами в цикле for .
Чтобы повторно запустить приложение с самого начала в отладчике, нажмите сочетание клавиш CTRL+SHIFT+F5 или кнопку Перезапустить на панели инструментов «Отладка» или выберите Отладка>Перезапустить в строке меню.

Кнопка Перезапустить останавливает отладчик, а затем сразу перезапускает его. Когда отладчик перезапускается, он запускается в первую точку останова, которая является ранее заданной точкой останова внутри for цикла, а затем приостанавливается.
Проверка переменных с помощью окон «Видимые» и «Локальные»

- Взгляните на окно Видимые в нижней части редактора кода. Если он закрыт, откройте его при приостановке в отладчике, выбрав «Отладка>Windows>Autos«. В окне Видимые отображаются переменные и их текущие значения. В окне Видимые отображаются все переменные, используемые в текущей или предыдущей строке (сведения о зависящем от языка поведении см. в соответствующей документации).
- Затем посмотрите на окно Локальные на вкладке рядом с окном Видимые.
- Разверните переменную letters , чтобы отобразить элементы, которые она содержит. В окне Локальные показаны переменные, которые находятся в текущей области, то есть текущем контексте выполнения.
В окнах Видимые и Локальные отображаются значения переменных во время отладки. Окна доступны только во время сеанса отладки. В окне Видимые отображаются переменные, используемые в текущей строке, в которой находится отладчик, и в предыдущей строке. В окне Локальные отображаются переменные, определенные в локальной области, которая обычно является текущей функцией или методом.

- Во время приостановки отладчика просмотрите окно Видимые в нижней части редактора кода. Если окно Видимые закрыто, нажмите клавиши Ctrl+D, A или в строке меню выберите Отладка >Windows >Видимые.
- Если отладчик по-прежнему приостановлен, просмотрите окно Локальные, расположенное во вкладке рядом с окном Видимые. Если окно Локальные закрыто, нажмите сочетание клавиш Ctrl+D, L или выберите Отладка >Windows >Локальные.
- В окне Локальные разверните переменную letters , чтобы просмотреть все ее элементы массива и их значения.
Дополнительные сведения об окнах Видимые и Локальные см. в статье о проверке переменных в окнах «Видимые» и «Локальные».
Установка контрольного значения
В основном окне редактора кода щелкните правой кнопкой мыши переменную name и выберите команду Добавить контрольное значение.
В нижней части редактора кода откроется окно Контрольное значение. В окне Контрольное значение можно указать переменную (или выражение), которую необходимо отслеживать.
Теперь у вас есть контрольное значение, заданное для переменной name , и по мере перемещения по отладчику вы можете наблюдать за изменением его значения. В отличие от других окон переменных, окно «Контроль» всегда отображает переменные, которые вы просматриваете (они серые при выходе из область).
Вы можете указать переменную или выражение, которое необходимо отслеживать во время поэтапного выполнения кода, добавив его в окно контрольных значений.
- Когда отладчик будет приостановлен, щелкните правой кнопкой мыши переменную name и выберите Добавить контрольное значение. В нижней части редактора кода по умолчанию откроется окно контрольных значений.
- Теперь, когда вы установили контрольное значение для переменной name , пошагово выполните код, чтобы увидеть, как значение переменной name меняется с каждой итерацией цикла for . В отличие от других окон переменных, в окне «Контрольные данные» всегда отображаются переменные, которые вы просматриваете. Переменные, не область, отображаются как недоступные.
Дополнительные сведения о окне «Просмотр» см. в разделе «Просмотр переменных» с окнами «Просмотр».
Изучение стека вызовов

- Хотя выполнение кода приостановлено в цикле for , выберите окно стека вызовов, которое по умолчанию открыто в нижней правой области. Если он закрыт, откройте его при приостановке в отладчике, выбрав отладку>стека вызовов Windows.>
- Несколько раз нажмите клавишу F11, пока отладчик не приостановится в методе SendMessage . Взгляните на окно Стек вызовов. В окне Стек вызовов показан порядок вызова методов и функций. В верхней строке приведена текущая функция (в данном приложении метод SendMessage ). Во второй строке показано, что функция SendMessage была вызвана из метода Main и т. д.
Примечание. Окно Стек вызовов аналогично перспективе «Отладка» в некоторых интегрированных средах разработки, например Eclipse.
Стек вызовов может помочь разобраться в потоке выполнения приложения, показывая порядок, в котором вызываются методы и функции.

- Пока отладчик приостановлен в цикле for , просмотрите окно Стек вызовов, которое по умолчанию открывается в нижней правой области редактора кода. Если окно Стек вызовов закрыто, нажмите сочетание клавиш Ctrl+D, A или в строке меню выберите Отладка >Windows >Стек вызовов. В окне «Стек вызовов» отображается желтый указатель на текущий Main метод.
- Несколько раз нажмите клавишу F11, пока отладчик не приостановится в методе SendMessage . В верхней строке окна Стек вызовов показана текущая функция – метод SendMessage . Во второй строке показано, что метод SendMessage был вызван из метода Main .
Примечание. Окно Стек вызовов аналогично перспективе «Отладка» в некоторых наборах IDE, например Eclipse.
Дополнительные сведения о Стеке вызовов см. на этой странице.
Изменение потока выполнения
- Дважды нажмите клавишу F11, чтобы запустить метод Console.WriteLine .
- При приостановке SendMessage вызова метода с помощью отладчика используйте мышь для захвата желтой стрелки или указателя выполнения (в левом поле) и перетащите указатель вверх по одной строке в инструкцию Console.WriteLine .
- Нажмите клавишу F11. Отладчик повторно запускает Console.WriteLine метод (это действие отображается в выходных данных окна консоли). Изменяя поток выполнения, можно решать множество задач, например тестировать различные пути выполнения кода или повторно выполнять код без перезапуска отладчика.
Предупреждение Как правило, при работе с этой функцией необходимо соблюдать осторожность — вы увидите соответствующее предупреждение во всплывающей подсказке. Могут отображаться и другие предупреждения. При перемещении указателя предыдущее состояние приложения не возвращается.
Вы можете переместить указатель выполнения, чтобы изменить поток приложения во время отладки.
- Когда отладчик приостановится на вызове метода SendMessage в цикле for , три раза нажмите клавишу F11, чтобы выполнить шаг с заходом в метод SendMessage и перейти за пределы метода Console.WriteLine его выполнения. Теперь отладчик приостанавливается на последней закрывающей фигурной скобке метода SendMessage .
- Мышью захватите желтую стрелку или указатель выполнения (в поле слева), а затем перетащите указатель вверх на одну строку. Теперь отладчик снова находится в операторе Console.WriteLine .
- Нажмите клавишу F11. Отладчик повторно запускает Console.WriteLine метод и отображается повторяющаяся строка в выходных данных окна консоли.
- Чтобы продолжить выполнение приложения, нажмите клавишу F5.
Изменяя поток выполнения, можно решать множество задач, например тестировать различные пути выполнения кода или повторно выполнять код без перезапуска отладчика.
Используйте эту возможность осторожно. В подсказке указателя выполнения появится предупреждение о возможных непредвиденных последствиях. Могут также появиться другие предупреждения. Переместив указатель выполнения, нельзя вернуть приложение в предыдущее состояние.
Дополнительные сведения об изменении потока выполнения см. в этом разделе.
Поздравляем с завершением этого учебника!
Следующие шаги
В этом руководстве вы узнали, как запускать отладчик, осуществлять пошаговое выполнение кода и проверять переменные. Возможно, вы захотите получить более полное представление о возможностях отладчика, а также воспользоваться ссылками на дополнительные материалы.
Как пользоваться Visual Studio Code

Visual Studio Code – это один из наиболее популярных редакторов кода, разработанный корпорацией Microsoft. Он распространяется в бесплатном доступе и поддерживается всеми актуальными операционными системами: Windows, Linux и macOS. VS Code представляет собой обычный текстовый редактор с возможностью подключения различных плагинов, что дает возможность работать со всевозможными языками программирования для разработки любого IT-продукта.
Несмотря на столь высокую популярность программы, ее функционал до сих пор остается не таким очевидным, из-за чего многие пользователи предпочитают продукт конкурента, нежели VS Code. Чтобы решить все проблемы, возникающие при работе с Visual Studio Code, рекомендую ознакомиться с подробным гайдом по настройке этого редактора кода. В нем я покажу, что VS Code – это мощный инструмент, которым может пользоваться каждый.
Установка Visual Studio Code
С установкой среды не должно возникнуть никаких проблем, но давайте все же проведем небольшой ликбез. Выполним несколько действий:
- Переходим на официальный сайт и загружаем установочный файл.

- Следующим шагом запускаем установочник и ставим редактор кода на компьютер. В блоке «Выберите дополнительные задачи» рекомендую отметить два пункта, позволяющие запускать файлы через выпадающее меню – так вы сможете быстро открыть код в VS Code.

На этом установка завершена. Теперь мы можем использовать редактор кода по назначению. Обычно с этим не должно возникнуть никаких проблем, однако на слабых машинах запуск утилиты часто прерывается. Вылечить такой недуг можно с помощью добавления нового значения к пути ярлыка. Для этого откроем его свойства через правый клик мыши и в графе «Объект» пропишем —disable-gpu.

Готово! Теперь программа должна работать на любом компьютере.
Комьюнити теперь в Телеграм
Подпишитесь и будьте в курсе последних IT-новостей
Интерфейс Visual Studio Code
При первом запуске перед нами отобразится окно приветствия, через которое можно получить быстрый доступ к ранее запущенным проектам либо создать новые. Весь интерфейс на английском языке (всего в несколько кликов он переводится на русский, но об этом чуть позже). Давайте пока разберемся с интерфейсом: откроем для примера файл с кодом, посмотрим, как его идентифицирует программа без предварительных настроек, и разберем каждый блок утилиты.
Запустить файл с кодом мы можем через правый клик мыши -> Открыть с помощью Code. Файл можно открыть и в программе: для этого в верхнем правом углу выбираем «File» и жмем «Open File…». После этого переходим в нужную директорию и выбираем файл.

В результате перед нами отобразится окно с кодом из файла. Давайте визуально разделим интерфейс на блоки и рассмотрим каждый из них более детально.
Первое, что бросается в глаза, – это блок кода, для которого отведено больше всего места. Название функций и прочее подсвечено разными цветами. Здесь же указан путь до файла, а чуть выше расположены вкладки-файлы, по которым можно перемещаться. С помощью них мы можем добавлять не просто один файл с кодом, а целый проект.

Следующий блок – левая панель управления, включающая в себя 5 основных вкладок: «Проводник», «Поиск», «Система управления версиями», «Запуск кода» и «Расширения». Первая предоставляет пользователю возможность просматривать содержимое проекта и быстро перемещаться внутри него.

Вторая вкладка – поиск. Используется для нахождения слов в документе. Он также может быть запущен с помощью комбинации клавиш «CTRL+SHIFT+F». Алгоритм использования довольно прост – вводим название в поиск и смотрим результат.

Система управления версиями – предназначена для взаимодействия с git.

Запустить и проверить работоспособность кода мы можем в следующей вкладке:

Еще одна важная вкладка, с помощью которой из Visual Studio Code можно сделать функциональную утилиту, это «Расширения». В ней находятся установочники для всех популярных инструментов, используемых разработчиками.

Следующий блок – нижний статус-бар. В нем отображается общая информация о состоянии программы. Обратите внимание, что VS Code автоматически определяет язык программирования и информирует нас об этом.

И еще один раздел – правая панель, включающая в себя небольшой дисплей, который отображает код в уменьшенном варианте, а также позволяет удобно скроллить внутри него. Здесь же мы можем разделить окно кода на несколько столбцов, а также закрыть все файлы одним кликом – для этого используются две верхние кнопки.

Как видите, если пройтись по интерфейсу программы, то она уже не кажется такой сложной. Чтобы сделать все еще проще, давайте проведем русификацию всех элементов интерфейса. О том, как это сделать, поговорим далее.
Русификация Visual Studio Code
Чтобы провести русификацию программы, открываем вкладку с расширениями и прописываем запрос vscode-language-pack-ru. В результате будет отображен новый элемент с кнопкой «Install» – кликаем по ней и ожидаем завершения установки.

Перезагружаем программу и смотрим, что язык интерфейса был изменен на русский:

Если вы захотите вернуть англоязычный интерфейс, для этого потребуется открыть раздел с плагинами и удалить установленный пакет с русским языком.
Внешний вид
Мы можем полностью изменить цветовую схему утилиты. Чтобы это сделать, воспользуемся комбинацией клавиш «CTRL+SHIFT+P» и введем запрос «theme». В отобразившемся списке выберем «Параметры: Цветовая тема».

В результате отобразится список возможных тем – для примера возьмем солнечную тему.

После применения темы интерфейс примет следующий вид:

Обратите внимание, что это не весь список тем – вы можете установить и другие. Для этого пролистайте в самый низ списка и выберите «Установить дополнительные цветовые темы…». После этого в левой части отобразится дополнительный блок с доступными цветовыми решениями.

Вот так мы можем изменить внешний вид программы. Теперь давайте перейдем к техническим моментам и рассмотрим работу наиболее важных плагинов.
Управление проектами
По умолчанию Visual Studio Code поддерживает работу с несколькими проектами, однако перемещаться между ними не очень удобно. Для удобства обычно используют плагин под названием Project Manager. С его помощью открывается возможность перемещения между рабочими областями всего в один клик. Установка проходит через магазин расширений, о котором мы говорили ранее. После того как менеджер проектов будет установлен, в левой панели управления появится новая вкладка для работы с плагином.

Теперь работа с проектами не должна вызывать никаких трудностей.
Автоформатирование кода
Один из важных этапов программирования – умение приводить все к единому виду с правильными отступами. Для таких задач в VS Code есть специальные плагины, позволяющие форматировать весь текстовый документ. Это такие расширения, как PHP-CS-Fixer для PHP, Prettier для JS/HTML/CSS и другие.
Рассмотрим, как форматируется код, написанный на JavaScript:
- Возьмем для примера функцию, отступы в которой выстроены случайным образом.

- Устанавливаем плагин Prettier через магазин расширений и открываем документ, который нужно отформатировать. Зажимаем комбинацию клавиш «CTRL+SHIFT+P» и вводим запрос «Format Document».

- Смотрим на код и видим, что он преобразился и принял аккуратный вид.

Аналогичным образом мы можем отформатировать код, написанный на других языках программирования. Для этого достаточно установить нужное расширение.
Автодополнение
В популярных программах, подобных Visual Studio, встроена функция автодополнения, помогающая завершить код. Например, вы пишите строчку кода, а среда подсказывает, как ее завершить. С помощью этой опции можно не только вспомнить нужную функцию, но и быстро написать код.
По умолчанию функция автодополнения в Visual Studio Code доступна только для некоторых языков. Для прочих языков программирования существуют дополнительные пакеты с окончанием «intellisense».
Посмотреть, какие пакеты доступны, вы можете в магазине плагинов.

Рекомендую установить PHP Intellisense, CSS Intellisense и Path Intellisense.
Управление Vim
Vim – это свободный текстовый редактор, работающий на основе vi. По умолчанию он установлен на каждой операционной системе семейства Unix. Кроме того, он доступен и в Visual Studio Code. Для работы с ним потребуется установить расширение с аналогичным названием:

Теперь мы можем перемещаться по файлу клавишами h, j, k, l, использовать Esc и сохранять файл командой :w.
Отладка кода
Для того чтобы запустить код в VS Code, нам нужно воспользоваться одним из расширений. Например, для JavaScript подойдет Debugger for Chrome. Узнать, какое расширение необходимо для конкретного языка, можно через «Выполнить» -> «Установить дополнительные отладчики…».

В результате в левой части окна будет отображен список доступных плагинов – найдите в нем подходящий для вас и следуйте инструкции.

После того как нужный плагин будет установлен, можно запускать отладку кода. Для этого достаточно открыть пункт «Выполнить» и нажать на кнопку «Запустить отладку». Также это можно сделать с помощью клавиши «F5».

С помощью плагинов мы можем отладить код, написанный на любом языке программирования.
Заключение
Сегодня мы разобрали функционал инструмента Visual Studio Code. Данная среда хороша не только для профессионалов, но и для новичков, изучающих основы программирования. Одно из преимуществ программы – это минимальное требование к железу: запустить программу можно практически на любом компьютере.
Надеюсь, что работа в VS Code больше не будет для вас проблемой, а активные проекты ждет успех. Удачи!
