Конвертер camelCase, snake_case и kebab-case

Введите название переменной, функции или поля в любом виде — через пробел, дефис, подчёркивание или в camelCase — и переведите его в нужный стиль именования: camelCase, PascalCase, snake_case, kebab-case, CONSTANT_CASE, dot.case или «Каждое Слово С Заглавной».

Символов
0
Слов
0
Строк
0

Ваш текст не покидает ваше устройство.

Как пользоваться

  1. Введите одно или несколько названий, по одному на строку.
  2. Выберите стиль именования.
  3. Скопируйте результат в код.

Примеры

  • До
    order created at
    После
    orderCreatedAt
  • До
    userFirstName (snake_case)
    После
    user_first_name
  • До
    Main Page Header (kebab-case)
    После
    main-page-header
  • До
    max retry count (CONSTANT_CASE)
    После
    MAX_RETRY_COUNT

Стили именования

Стиль Пример Где используют
camelCase orderCreatedAt переменные и функции в JavaScript, Java, Go
PascalCase UserProfilePage классы, типы, компоненты React
snake_case user_first_name Python, Ruby, столбцы баз данных
kebab-case main-page-header CSS-классы, URL, имена файлов
CONSTANT_CASE MAX_RETRY_COUNT константы и переменные окружения
dot.case app.config.name ключи конфигов, файлы локализации

Когда это нужно

  • Перенос данных между системами. Столбцы базы в snake_case превращаются в поля JSON в camelCase.
  • Переменные окружения. Названия настроек из документации переводятся в CONSTANT_CASE.
  • Вёрстка. Название блока из макета — в kebab-case для CSS-класса.
  • Рефакторинг. Привести к одному стилю список полей, скопированный из чужого кода.

Частые ошибки

  • Смешивать стили в одном проекте. user_name рядом с userAge затрудняет поиск и автодополнение. Договоритесь о стиле и придерживайтесь его.
  • Аббревиатуры. XMLHttpRequest, userID, parseURL — разные команды пишут их по-разному. Инструмент приводит их к виду xmlHttpRequest, проверьте, что так принято в вашем проекте.
  • Цифры. Названия вроде «address line 2» дают addressLine2 — убедитесь, что цифра стоит там, где вы ожидаете.
  • Кириллица в идентификаторах. Работать будет не везде, а вот проблемы с кодировками и раскладкой гарантированы.

Как выбрать стиль

Ориентируйтесь на язык и среду, в которую вставляете имя: camelCase принят в JavaScript и Java, snake_case в Python и в названиях столбцов баз данных, kebab-case в адресах страниц и классах CSS, CONSTANT_CASE в константах и переменных окружения. Если в проекте уже есть руководство по стилю, следуйте ему: единообразие важнее самого выбора.

Практические советы

  • Пишите имена переменных по-английски. Русские слова в идентификаторах мешают коллегам и могут вызвать проблемы с кодировкой файлов и систем контроля версий.
  • Если нужно превратить заголовок статьи в адрес страницы, выберите kebab-case, а затем транслитерируйте кириллицу отдельно: сам инструмент слова не переводит.
  • Числа остаются внутри слова: «версия 2 api» превратится в «версия2Api».

Частые вопросы

Чем camelCase отличается от PascalCase?

В camelCase первое слово начинается со строчной, а остальные — с заглавной: orderCreatedAt. В PascalCase с заглавной начинаются все слова, включая первое: UserProfilePage. camelCase обычно используют для переменных и функций, PascalCase — для классов, типов и компонентов React.

Какой стиль используется в каком языке?

JavaScript и Java: camelCase для переменных и методов, PascalCase для классов. Python: snake_case для переменных и функций, PascalCase для классов. Константы почти везде пишут в CONSTANT_CASE. В CSS-классах, URL и именах файлов принят kebab-case, в ключах конфигов — часто dot.case.

Как инструмент понимает, где кончается слово?

Границей слова считаются пробелы, дефисы, подчёркивания и точки, а также переход от строчной буквы к заглавной: userFirstName делится на user, first, name. Аббревиатуры приводятся к обычному виду: XMLHttpRequest в camelCase станет xmlHttpRequest.

Можно ли использовать русские слова?

Инструмент их обработает: «дата создания заказа» станет «датаСозданияЗаказа». Но в коде так делать не стоит: многие языки и инструменты плохо работают с кириллицей в идентификаторах, а коллегам с другой раскладкой будет неудобно. Лучше переведите название на английский.