Руководство по преобразованию регистра и стилей именования: camelCase, snake_case и другие

Текст

Почему стиль именования важен

Согласованный стиль именования — основа читаемости кода:

  • Снижает когнитивную нагрузку при командной работе
  • Следование соглашениям языка/фреймворка делает код идиоматичным
  • Автоматическое преобразование экономит время ручного редактирования
  • Адаптация стиля нужна при миграции кода между языками

Обзор распространённых стилей именования

Стиль Пример Типичные языки/контексты
camelCase userName JavaScript, Java, TypeScript
PascalCase UserService C#, имена классов/компонентов
snake_case user_name Python, Ruby, SQL
kebab-case user-name Атрибуты HTML, CSS, URL
SCREAMING_SNAKE MAX_RETRY Константы, переменные окружения
dot.case user.name Конфигурационные файлы, вложенные свойства

Правила преобразования

camelCase → Другие стили

Входные данные:getUserInfoById

→ PascalCase:  GetUserInfoById
→ snake_case:  get_user_info_by_id
→ kebab-case:  get-user-info-by-id
→ SCREAMING:   GET_USER_INFO_BY_ID

PascalCase → Другие стили

Входные данные:UserService

→ camelCase:   userService
→ snake_case:  user_service
→ kebab-case:  user-service
→ SCREAMING:   USER_SERVICE

snake_case → Другие стили

Входные данные:created_at

→ camelCase:   createdAt
→ PascalCase:  CreatedAt
→ kebab-case:  created-at
→ SCREAMING:   CREATED_AT

Основная логика: Разделить по разделителям (_, -, границы регистра) на слова, затем объединить в целевом стиле.


Соглашения об именовании по языкам

Язык Переменные Функции Классы Константы
JavaScript camelCase camelCase PascalCase SCREAMING_SNAKE
Python snake_case snake_case PascalCase SCREAMING_SNAKE
Java camelCase camelCase PascalCase SCREAMING_SNAKE
Go camelCase camelCase PascalCase SCREAMING_SNAKE
Rust snake_case snake_case PascalCase SCREAMING_SNAKE
CSS kebab-case

Использование инструмента преобразования регистра

Шаг 1: Открыть инструмент

Посетите инструмент преобразования регистра.

Шаг 2: Ввести текст

Вставьте имя переменной, имя функции или любой текст, который нужно преобразовать.

Шаг 3: Выбрать целевой стиль

Инструмент поддерживает преобразование в один клик:

  • camelCase (нижний camelCase)
  • PascalCase (верхний camelCase)
  • snake_case (подчёркивание)
  • kebab-case (дефис)
  • SCREAMING_SNAKE (константа)
  • dot.case (точка-разделитель)

Шаг 4: Скопировать результат

Нажмите кнопку копирования и вставьте прямо в редактор кода.


Советы по пакетному преобразованию

Нужно преобразовать стили именования во всей кодовой базе?

  1. Введите все идентификаторы построчно в инструмент преобразования регистра
  2. Или используйте инструмент строк для обработки нескольких строк одновременно
  3. Комбинируйте с инструментом Slug для генерации URL-совместимых имён путей

Особые случаи и предостережения

Случай Ввод Вывод (camelCase) Примечания
Последовательные аббревиатуры в верхнем регистре XMLParser xmlParser Аббревиатуры обрабатываются как одно слово
Завершающая цифра user2FA user2Fa Верхний регистр после цифры = новое слово
Уже разделён user_name_id userNameId Сначала разделить, затем объединить
Все в верхнем регистре MAX_SIZE maxSize Константа в переменную

Совет: Разные инструменты могут по-разному разделять аббревиатуры (XML, HTTP, URL). Всегда проверяйте результат.


Частые проблемы

Проблема Причина Решение
Неверный результат преобразования Разная стратегия разделения аббревиатур Вручную скорректировать части аббревиатур
Потеря информации о разделителе username может быть userName или user_name Сохранять оригинальные разделители
Смешано с CJK Нет регистра в китайском/японском Преобразовывать только английские части
Проблема с первой буквой camelCase требует строчной первой буквы Подтвердить правильность целевого стиля

Итоги

Владение преобразованием стилей именования — фундаментальный навык для мультиязычной разработки. Инструмент преобразования регистра позволяет переключаться между camelCase, PascalCase, snake_case, kebab-case и другими в один клик. В сочетании с инструментом строк и инструментом Slug можно эффективно адаптировать стили кода между проектами.

#大小写#命名风格#camelCase#snake_case#PascalCase