Стиль кода
Соглашения и рекомендации по написанию кода.
Plugify следует собственному стилю кода, разработанному для обеспечения последовательности, читаемости и поддерживаемости во всем проекте. Хотя мы не придерживаемся популярных соглашений о стиле, таких как Google Style или LLVM Style, наш стиль прост и легок для понимания. На этой странице изложены ключевые аспекты нашего стиля кода и предоставлены инструкции по использованию предоставленных конфигураций Clang-Tidy
и Clang-Format
.
Почему собственный стиль?
Мы решили использовать собственный стиль кода для Plugify, чтобы адаптировать форматирование и соглашения к конкретным потребностям проекта. Это позволяет нам:
- Поддерживать единый внешний вид во всей кодовой базе.
- Оптимизировать для читаемости и поддерживаемости.
- Избегать ненужной сложности, вводимой некоторыми популярными руководствами по стилю.
Ключевые аспекты стиля кода Plugify
1. Соглашения об именовании
- Переменные: Используйте
camelCase
для переменных. - Классы, структуры и функции: Используйте
PascalCase
для имен классов и структур. - Константы: Используйте
UPPER_SNAKE_CASE
для констант.
2. Отступы и пробелы
- Используйте табуляцию для отступов (не пробелы).
- Размещайте открывающие фигурные скобки
{
на той же строке, что и оператор. - Используйте один пробел после ключевых слов, таких как
if
,for
иwhile
.
3. Длина строки
- Ограничивайте строки 120 символами для лучшей читаемости.
4. Комментарии
- Используйте
//
для однострочных комментариев и/* ... */
для многострочных комментариев. - Размещайте комментарии над кодом, который они описывают, а не в той же строке.
5. Защита заголовочных файлов
- Используйте
#pragma once
для заголовочных файлов, чтобы избежать многократного включения.
Использование Clang-Tidy и Clang-Format
Чтобы упростить соблюдение стиля кода, мы предоставляем файлы конфигурации Clang-Tidy
и Clang-Format
в репозитории. Эти инструменты автоматически форматируют ваш код и обеспечивают соблюдение правил стиля.
1. Clang-Format
Clang-Format
автоматически форматирует ваш код в соответствии с руководством по стилю. Чтобы его использовать:
- Установите
Clang-Format
, если вы еще этого не сделали. - Выполните следующую команду в корне репозитория:
Это отформатирует файл на месте.
2. Clang-Tidy
Clang-Tidy
выполняет статический анализ и обеспечивает соблюдение дополнительных правил стиля и лучших практик. Чтобы его использовать:
- Установите
Clang-Tidy
, если вы еще этого не сделали. - Выполните следующую команду в корне репозитория:
Автоматизация форматирования
Чтобы автоматизировать форматирование и анализ, вы можете интегрировать Clang-Format
и Clang-Tidy
в вашу IDE или систему сборки. Большинство современных IDE (например, Visual Studio, CLion, VSCode) поддерживают эти инструменты нативно.
Почему важна последовательность
Последовательный стиль кода имеет решающее значение для:
- Читаемости: Делает код более понятным для всех участников.
- Поддерживаемости: Снижает когнитивную нагрузку при навигации по кодовой базе.
- Сотрудничества: Гарантирует, что все следуют одним и тем же соглашениям, уменьшая трения во время код-ревью.
Советы для участников
- Запускайте инструменты форматирования: Всегда запускайте
Clang-Format
иClang-Tidy
перед отправкой pull-запроса. - Следуйте руководству по стилю: Придерживайтесь соглашений об именовании, правил отступов и других рекомендаций, изложенных выше.
- Просите о помощи: Если вы не уверены в каком-либо аспекте стиля кода, не стесняйтесь задавать вопросы в сообществе Discord или открывать issue на GitHub.
Заключение
Собственный стиль кода Plugify разработан так, чтобы быть простым, последовательным и легким для понимания. Используя предоставленные конфигурации Clang-Tidy
и Clang-Format
, вы можете убедиться, что ваш код соответствует руководствам по стилю проекта. Последовательный стиль кода необходим для поддержания высококачественной кодовой базы, и мы ценим ваши усилия по соблюдению этих соглашений.