Skip to content

Шаблон репозитория для проектной работы «Мидл разработчик С++»

License

Notifications You must be signed in to change notification settings

Yandex-Practicum/cpp-middle-project-sprint-9

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

cpp-middle-project-sprint-9

Шаблон репозитория для практического задания 9-го спринта «Мидл разработчик С++»

До начала использования Docker контейнера: Настройка переменных окружения

Для корректной работы контейнера добавьте в ваш bash-профиль две переменные окружения и обновите его, выполнив следующие команды:

# Set USER_UID and USER_GID
echo -e '\nexport USER_UID=$(id -u)\nexport USER_GID=$(id -g)' >> ~/.bashrc

# Update bash-profile
source ~/.bashrc

Перед началом работы с Docker контейнером, убедитесь, что переменные окружения доступны, внутри используемой вами IDE (например в терминале внутри VS Code):

printf "\nUSER_UID=${USER_UID=}\nUSER_GID=${USER_GID}\n\n"

Начало работы

  1. Убедитесь, что переменные окружения из предыдущего шага доступны внутри вашей IDE
  2. Нажмите зелёную кнопку Use this template, затем Create a new repository.
  3. Назовите свой репозиторий.
  4. Склонируйте созданный репозиторий командой git clone your-repository-name.
  5. Создайте новую ветку командой git switch -c development.
  6. Откройте проект в Visual Studio Code.
  7. Нажмите F1 и откройте проект в dev-контейнере командой Dev Containers: Reopen in Container.

Reopen in container

Сборка проекта и запуск тестов

Данный репозиторий использует следующие инструменты:

Команды для сборки проекта

Используйте F5 для выполнения следующих шагов:

  • Создание папки build
  • Вызов conan команд для установки требуемых библиотек и запуска процесса сборки
  • Запуска lldb отладчика

Обратите внимание: при сборке проекта без изменений вы получите большую ошибку, содержащую note: the expression ‘enable_sender<typename stdexec:: ... [with _Sender = SfmlEventHandler]’ evaluated to ‘false’. Вспомните, из-за чего может появиться такая ошибка при работе с stdexec и как мы решали похожую проблему в курсе.

Также, вы можете запустить только команду построения проекта. Для этого:

  • вызовите командное окно, нажав F1

  • Выберите команду Tasks: Run Task

  • Выберите команду сборки проекта, например GCC: Build Debug app

Команды для запуска приложения

cd build
./MandelbrotFractal

Команда для запуска тестов

Для запуска тестов вы можете воспользоваться удобным расширением C++ TestMate:

Команда для запуска clang-format — обязательное требование перед сдачей работы на ревью

В этом репозитории настроен автоматический запуск clang-format (файл конфигурации — .vscode/settings.json) при сохранении любого файла с кодом.

Убедитесь, что эта функциональность работает:

  • Добавьте несколько пустых линий в любой файл.
  • Сохраните файл.
  • Если пустые линии были удалены, всё работает, если нет — убедитесь, что clangd работает (при открытии файла с кодом в самом низу VS Code на голубой полоске должно быть написано clangd: idle). Для этого:
    • нажмите F1 и выполните команду clangd: Download language server;
    • нажмите F1 и выполните команду clangd: Restart language server;
    • нажмите F1 и выполните команду Developer: Reload Window.

Команды для запуска отладчика

В Visual Studio Code настройки параметров для запуска отладчика находятся в файле .vscode/launch.json. Поскольку в этом файле для запуска приложения уже есть одна конфигурация Launch *, то для запуска отладчика достаточно нажать F5 или открыть окно Run and Debug комбинацией клавиш Ctrl+Shift+D.

Дополнительно

Для настройки автодополнения Ctrl + Space нажмите F1 и выполните команду clangd: Download language server. VS Code сам предложит установить подходящую версию clangd (всплывашка в правом нижнем углу). После завершения установки перезагрузите окно кнопкой перезапуска справа снизу или с помощью F1 и выполните команду Developer: Reload Window.

Если всё сделали правильно, то после успешной сборки проекта вы сможете использовать автодополнение.

Скриншот 2

Скриншот 3

About

Шаблон репозитория для проектной работы «Мидл разработчик С++»

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •