Українська

Текстові та повсякденні інструменти · Text Toolkit

camelCase, snake case, kebab-case і PascalCase: де кожен використовується

· Підземелля

Опубліковано ToolAcre · Редакція журналу

випадок-конверсія ідентифікатори розробник-workflow

Один ідентифікатор профілю, написаний у верблюді, Pascal, змії та шашлику
Головна ToolAcre векторна ілюстрація

Тур конвенцій namming — де вони прийшли з того, що мови та екосистеми очікують, що і чому імена файлів, URL-адреси, колонки бази даних та JSON ключі кожного витягу в іншому напрямку.

П'ять імен для одного - UserProfileId, User profile id, User-profile-id, UserProfileId і USER_PROFILE_ID

Фраза "Ідентифікатор профілю користувача" може статися `userProfileId`, `UserProfileId`, `user_profile_id`або `user-profile-id` без зміни слів. Виявною відмінністю є де з'являються кордони і чи починається перше слово з столиці. ToolAcre генерує ті чотири форми безпосередньо з того ж введення, що робить їх структурними відмінностями легко порівняти.

Всеодержитель `USER_PROFILE_ID` є ще однією корисною конвенцією проекту, але це не окремий комбінований варіант у джерело перетворювача корпусу. Інструментарій самостійно виводить змійну справу і перетворення верхнього краю. Якщо кодова база використовує константи верхнього регістру, перетворюйте у випадку змії, а потім у верхньому регістру, а не затверджуючи меню справи, виконує одночасно обидва кроки.

Чотири перетворення, продемонстровані Text Toolkit, плюс постійний вигляд верхнього регістру, зібраний окремо

`camelCase` починається з нижчого слова і капіталізує початок кожного наступного слова. `PascalCase` застосовує одну і ту саму форму, в той час як капіталізація першого слова. У ToolAcre, обидва перетворення починаються з того ж слово розгалужувача, тому пунктуація і наявні межі корпусу інтерпретуються до виходу.

Багато команд призначають дві форми на різні види імен, але репозиторій не встановлює універсальне правило мови або історія для цього розщеплення. Порада місцевого стилю, лим, каркас API, або найближчий код як орган. Перетворювач змінює форму написання; він не визначає, чи є ім'я класу, функції, змінної або компонента.

camelCase і PascalCase відрізняються першим листом; історія мови поза репозиторійними доказами

`snake_case` знижує кожен виявлений слово і приєднується до результатів з низами. Для `User Profile ID`, ToolAcre повернення `user_profile_id`. Сепаратори залишаються видимими, які можуть допомогти при надходженні імен через системи, які не зберігають капіталізацію надійно, але це практична перевага не є доказом, що кожна база даних, мова або служба очікує підкреслення.

Використовуйте конвенцію вже визначені в пункті призначення. Служба Python може мати одну політику, SQL schema інший, і послідовно оплачується третя. ToolAcre не враховувати договори. Його надійна обіцянка вузька: `toSnakeCase` виявляє слова, опуски кожен, і вставки `_` між ними, незважаючи на те, що дозвіл на призначення або воліє результат.

wake case вихід підтримується безпосередньо; екосистема та SQL очікування залежать від кожного проекту

`kebab-case` використовує ті ж нижні слова, але приєднується до них з гіфенами, виробництвом `user-profile-id`. Ця форма візуально зрозуміла в місцях, де фен приймається як дані, такі як настрочений сегмент маршруту або проектно-визнаний назва файлу. Не є JavaScript ідентифікатор, тому що парсер може читати дифен як оператор, а не частина одного імені.

Списки контурів CSS класи, HTML атрибути, командно-лінійні прапори і URL не визначає правила споживачів. Підтвердіть цільовий синтаксис перед перетворенням. ToolAcre також має окремий `slugify` функція з акцентом складки, вибір сепаратора, обрізка та додаткове обслуговування довжини, тому звичайна конвертація шашликів не повинна бути представлена в повній мірі URL-виправлення слюги.

вихід шашлика підтримується безпосередньо; діє використання залежить від навколишнього синтаксису

Вузькі конвенції стають оперативними, а не косметичними. Об'єкт веб-переглядача може використовувати одне засвідчення під час API завантаження або колонка бази даних використовує інший. Зробіть це відображення на одному адаптері замість розсіювання перетворення по поглядах, запитах та логіці бізнесу. Випробуваний край зберігає кожну внутрішню модель, що відповідає і полегшує переміщення.

Уникайте перетворення довільних значень, тому що вони виглядають як ідентифікатори. Слово спліттер лікує пунктуацію як кордони і визнає вибрані переходи між нижньою регістрою, верхньою та цифрою. Це корисно для імен, але це може змінювати ключі, заклинання якого є зовнішньо закріпленим. Збереження ключів контракту, крім випадків, коли отримання документів інтерфейсу, що копіюються під контролем.

Створений приклад — перетворення одного ідентифікатора через всі конвенції та декідка, що належить до якого в невеликому проекті

Розглянемо невеликий додаток з фразою `user profile ID`. ToolAcre виробництво `userProfileId` для повісті, `UserProfileId` для Pascal випадку, `user_profile_id` для змії, `user-profile-id` для шашлика. Кожен вихід несе однакові три виявлених слів, при капіталізації та вставленого сепаратора закодовано обрану форму.

Практичний проект `userProfileId` в JavaScript об'єкт, мапа його явно до `user_profile_id` на постійній межі та резерв `user-profile-id` для місця розташування, граматика якого приймає фени. Точні вибірки відносяться до цього проекту. Важливою частиною є документування кожного граничного і тестування картування замість багаторазового здогадування з зовнішнього вигляду.

Що це не криється — угорська нотація та дебати про аббревіатури всередині ідентифікаторів

Цей порівняння не поселиться аббревіатурним заклинанням. Впровадження виявляє слова на нижні частини до перебудування їх, тому введення, що містить `HTTP` може виникнути як `Http` всередині Pascal або camel виведення. Якщо команда воліє `Http`, `HTTP`, `Id`або `ID` - це політика, яка потребує явного виключення з цих загальноперетворень.

Це також не охоплює історії нотації, мовні стандарти, або кожен дійсний ідентифікатор граматики. Ці вимоги вимагають джерел за межі файлів інструментів, що використовуються для цієї статті. ToolAcre продемонструвати детермінацію текстових перетворень та документів, які є одним з ключових обмежень: з’єднання, написане без будь-яких виявлених меж, не завжди може розбитись на слова, призначену особою.

Історія аббревіатури та історії нотації зовні

Немає одного випадку універсально правильно. Ім'я корисно, коли він слідує контракту і залишається впізнаваним людям, що підтримують цей шар. Почати з конвенцією вже присутні, зберігати одну форму всередині кордону, і перевести лише там, де потрібен інший інтерфейс. Консистенція зменшує випадкові відмінності без претендування кожного правила екосистеми.

Коли обмежена форма вимагає іншої форми, вставте ідентифікатор у конвертер тексту Toolkit і перевірте чотири виходи перед нанесенням. Проводиться в браузері і проявляються випадки, що текст не направляється на сервер або переадресований. Використовуйте результат у вигляді навмисного картографування, а потім дайте тести проекту та перевірки місцевого стилю, що підтверджують остаточний вибір.