Заполните форму и наш менеджер свяжется с вами
Нотации в именовании переменных: верблюд, змея, шашлык (кебаб) и другие

Нотации в именовании переменных: верблюд, змея, шашлык (кебаб) и другие

article

Рекомендуемые программы обучения

banner

В программировании правильное именование переменных является ключевым фактором для обеспечения читаемости и поддержки кода. Существует несколько популярных стилей записи имён, таких как camelCase (Стиль с использованием заглавных букв для каждого нового слова, кроме первого), snake_case (Стиль со знаком подчёркивания) и kebab-case (Стиль с дефисом), каждый из которых имеет свои правила и подходит для определённых ситуаций. Об основных принципах и примерах использования различных стилей именования – расскажем в статье.

Подберите программу обучения, узнайте проходной балл и начните учиться бесплатно

Зачем нужны разные стили именования переменных и функций

Для того чтобы код было легче читать и поддерживать, программисты используют разные стили именования переменных и функций. Это позволяет разработчикам легко ориентироваться в чужом коде и снижает вероятность возникновения ошибок.

Разные стили именования переменных и функций могут быть выбраны в зависимости от языка программирования, стандартов команды или предпочтений разработчиков.

Вот несколько плюсов разнообразия стилей:

Читаемость кода: Правильное именование переменных и функций помогает быстро понять, что именно делает код. Например, переменная «totalSales» гораздо понятнее, чем просто «ts».

Консистентность: Использование единого стиля в проекте делает код более однородным. Это упрощает его поддержку и чтение, так как легче ориентироваться в нём.

Совместная работа: В командах разработки часто работают несколько программистов. Использование общепринятых стилей помогает им лучше понимать друг друга. Это снижает вероятность ошибок и недопониманий.

Соглашения о кодировании: Многие языки программирования и компании имеют свои соглашения о кодировании. Они включают рекомендации по стилям именования. Например, в Java часто используется стиль «camel case», а в Python — «snake case».

Какие нотации именования существуют

Camel Case (верблюжий регистр):

  • lowerCamelCase: Первый символ в нижнем регистре, последующие слова начинаются с заглавной буквы. Пример: camelCaseExample.
  • UpperCamelCase (PascalCase): Все слова начинаются с заглавной буквы. Пример: CamelCaseExample.

Snake Case (змеиный регистр):

  • Все слова разделяются подчеркиванием и пишутся в нижнем регистре. Пример: snake_case_example.
  • Screaming Snake Case: Все слова разделяются подчеркиванием и пишутся в верхнем регистре. Пример: SCREAMING_SNAKE_CASE.

Kebab Case (шашлык/кебаб кейс):

  • Все слова разделяются дефисом и пишутся в нижнем регистре. Пример: kebab-case-example.

Train Case:

  • Все слова разделяются дефисом и пишутся с заглавной буквы. Пример: Train-Case-Example.

Dot Notation:

  • Все слова разделяются точкой и обычно пишутся в нижнем регистре. Пример: dot.notation.example.

Примеры в программировании

  • Camel Case (lowerCamelCase): часто используется в Java для именования переменных и методов.
  • Upper Camel Case (PascalCase): используется для именования классов в Java и других языках.
  • Snake Case: широко применяется в Python для именования переменных и функций.
  • Kebab Case: обычно используется в URL, именах файлов и CSS-классах.

Camel case (camelCase)

Camel case (камелкейс, он же верблюд) — это стиль именования переменных, функций и других идентификаторов в программировании, при котором слова соединяются без пробелов, а каждое последующее слово начинается с заглавной буквы. Первый символ может быть в нижнем или верхнем регистре, что определяет два подвида: lowerCamelCase и UpperCamelCase (также известный как Pascal Case).

LowerCamelCase

В lowerCamelCase первое слово начинается с маленькой буквы, а последующие слова — с заглавной. Этот стиль часто используется для именования переменных и функций в таких языках программирования, как Java, JavaScript и C#.

// Функция для вычисления суммы двух чисел
function addNumbers(firstNumber, secondNumber) {
    let totalSum = firstNumber + secondNumber;
    return totalSum;
}

// Переменные для хранения чисел
let numberOne = 5;
let numberTwo = 10;

// Вызов функции и вывод результата
let result = addNumbers(numberOne, numberTwo);
console.log("The sum is: " + result); // Вывод: The sum is: 15

javascript

UpperCamelCase (Pascal Case)

В UpperCamelCase (или Pascal Case) каждое слово, включая первое, начинается с заглавной буквы. Этот стиль обычно используется для именования классов и типов в языках, таких как Java, C#, и в некоторых случаях в JavaScript.

// Функция для вычисления площади прямоугольника
function CalculateArea(Width, Height) {
    let Area = Width * Height;
    return Area;
}

// Переменные для хранения размеров прямоугольника
let RectangleWidth = 5;
let RectangleHeight = 10;

// Вызов функции и вывод результата
let RectangleArea = CalculateArea(RectangleWidth, RectangleHeight);
console.log("The area of the rectangle is: " + RectangleArea); // Вывод: The area of the rectangle is: 50

javascript

Преимущества использования Camel Case

Читаемость: использование camelCase помогает легко различать слова в длинных именах переменных и функций. Например, имя «calculateTotalSales» гораздо проще прочитать, чем «calculatetotalsales».

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

Принятие в сообществах: многие языки программирования и сообщества разработчиков имеют соглашения по использованию camelCase. Это позволяет вашему коду быть более стандартизированным и понятным для других разработчиков.

Pascal case (PascalCase)

Pascal Case (PascalCase) — это стиль именования переменных, функций и других идентификаторов в программировании, при котором каждое слово в имени начинается с заглавной буквы и все слова соединяются без пробелов. Этот стиль также известен как UpperCamelCase, но обычно термин PascalCase используется для описания стиля, когда каждое слово, включая первое, начинается с заглавной буквы.

Преимущества использования Pascal Case

  • PascalCase улучшает читаемость кода, позволяя легко различать слова в длинных именах переменных и функций. Это делает код более понятным для разработчиков.
  • Также стоит отметить, что многие языки программирования и их сообщества уже приняли соглашения по использованию PascalCase для именования классов и типов. Это означает, что ваш код будет более стандартизированным и понятным для других разработчиков, которые знакомы с этими соглашениями.

Примеры использования Pascal Case

  1. Классы и типы:
    • Person
    • RectangleAreaCalculator
    • UserProfile
  2. Методы и функции:
    • GetUserName()
    • CalculateTotalPrice()
    • ConvertToUpperCase()

public class Rectangle {
    public double Width { get; set; }
    public double Height { get; set; }

    public Rectangle(double width, double height) {
        Width = width;
        Height = height;
    }

    public double CalculateArea() {
        return Width * Height;
    }
}

class Program {
    static void Main() {
        Rectangle myRectangle = new Rectangle(5, 10);
        double area = myRectangle.CalculateArea();
        Console.WriteLine("The area of the rectangle is: " + area); // Вывод: The area of the rectangle is: 50
    }
}

C#

Snake case (snake_case)

Snake case (snake_case, змея) — это стиль, который используется для именования переменных, функций и других идентификаторов в программировании. При таком стиле все слова в имени идентификатора пишутся в нижнем регистре и разделяются символом подчёркивания. Этот стиль широко распространён в Python и других языках программирования, так как он улучшает читаемость кода.

Преимущества использования Snake case

  • Подчеркивание слов в именах переменных и функций помогает сделать их более читаемыми, особенно если они состоят из нескольких слов. 
  • В некоторых языках программирования, таких как Python, snake_case является общепринятым стандартом для именования переменных и функций. Используя этот стиль, вы делаете свой код более понятным и соответствующим стандартам, что упрощает работу с ним другим разработчикам.

Применение в языках программирования

  • Python: snake_case широко используется для именования переменных, функций и методов.
  • Ruby: Переменные и методы обычно именуются в snake_case.
  • C: Переменные и функции часто именуются в snake_case.

# Функция для вычисления суммы двух чисел
def add_numbers(first_number, second_number):
    total_sum = first_number + second_number
    return total_sum

# Переменные для хранения чисел
number_one = 5
number_two = 10

# Вызов функции и вывод результата
result = add_numbers(number_one, number_two)
print("The sum is:", result)  # Вывод: The sum is: 15

Uppercase snake case (UPPERCASE_SNAKE_CASE)

Uppercase Snake Case (UPPERCASE_SNAKE_CASE) — это стиль именования, в котором все слова пишутся в верхнем регистре и разделяются подчеркиванием. Этот стиль часто используется для именования констант в различных языках программирования.

Преимущества использования Uppercase Snake Case

  1. Явное различие констант: Использование верхнего регистра и подчеркивания помогает четко отличать константы от других типов идентификаторов, таких как переменные и функции.
  2. Читаемость: Разделение слов подчеркиванием делает длинные имена легко читаемыми.

Примеры использования Uppercase Snake Case

  1. Константы:
    • MAX_VALUE
    • DEFAULT_TIMEOUT
    • API_KEY
  2. Константы конфигурации:
    • DATABASE_URL
    • CACHE_SIZE
    • LOG_LEVEL

# Константы
MAX_VALUE = 100
DEFAULT_TIMEOUT = 30
API_KEY = 'your_api_key_here'

# Функция для проверки значения
def is_value_valid(value):
    return value <= MAX_VALUE

# Проверка значения и вывод результата
value = 50
print("Is value valid?", is_value_valid(value))  # Вывод: Is value valid? True

# Использование констант в другой функции
def get_api_key():
    return API_KEY

print("API Key:", get_api_key())  # Вывод: API Key: your_api_key_here

Python

// Константы
const MAX_VALUE = 100;
const DEFAULT_TIMEOUT = 30;
const API_KEY = 'your_api_key_here';

// Функция для проверки значения
function isValueValid(value) {
    return value <= MAX_VALUE;
}

// Проверка значения и вывод результата
let value = 50;
console.log("Is value valid?", isValueValid(value)); // Вывод: Is value valid? true

// Использование констант в другой функции
function getApiKey() {
    return API_KEY;
}

console.log("API Key:", getApiKey()); // Вывод: API Key: your_api_key_here

javascript

Подберите программу обучения, узнайте проходной балл и начните учиться бесплатно

Kebab case (kebab-case)

Kebab case (kebab-case, он же кебаб/шашлык) — это стиль именования, где все слова в имени записываются строчными буквами и разделяются дефисами. Такой стиль часто применяют в URL-адресах, названиях файлов и CSS-классах.

Преимущества использования Kebab case

  1. Разделение слов дефисами облегчает чтение имён.
  2. Универсальность. Kebab case хорошо подходит для веб-разработки, особенно при работе с URL-адресами и CSS-классами.

Примеры использования Kebab case

  1. URL-адреса:
    • my-website.com/about-us
    • api.example.com/get-user-data
  2. Имена файлов:
    • user-profile.html
    • main-styles.css
  3. CSS-классы:
    • .nav-bar
    • .footer-section
    • .button-primary

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="stylesheet" href="main-styles.css">
    <title>Kebab Case Example</title>
</head>
<body>
    <header class="main-header">
        <nav class="nav-bar">
            <ul>
                <li><a href="/home-page">Home</a></li>
                <li><a href="/about-us">About Us</a></li>
                <li><a href="/contact-us">Contact Us</a></li>
            </ul>
        </nav>
    </header>
    <main class="content-area">
        <section class="intro-section">
            <h1>Welcome to Our Website</h1>
            <p>This is an example of using kebab-case in HTML and CSS.</p>
        </section>
    </main>
    <footer class="footer-section">
        <p>&copy; 2024 My Website</p>
    </footer>
</body>
</html>

HTML

/* main-styles.css */

.main-header {
    background-color: #333;
    color: #fff;
    padding: 10px;
}

.nav-bar ul {
    list-style-type: none;
    padding: 0;
}

.nav-bar li {
    display: inline;
    margin-right: 10px;
}

.nav-bar a {
    color: #fff;
    text-decoration: none;
}

.content-area {
    padding: 20px;
}

.intro-section {
    background-color: #f4f4f4;
    padding: 20px;
    border: 1px solid #ddd;
}

.footer-section {
    background-color: #333;
    color: #fff;
    text-align: center;
    padding: 10px;
    position: absolute;
    bottom: 0;
    width: 100%;
}

CSS

Смешение стилей

В программировании важно придерживаться единого стиля именования переменных и функций, чтобы код был более читаемым и понятным. Однако в некоторых случаях может возникнуть необходимость использовать разные стили именования в рамках одного проекта. Это может быть связано с интеграцией с внешними библиотеками или с разными соглашениями по именованию, принятыми в разных частях проекта. 

// user-profile.js
export function getUserProfile(userId) {
    return {
        userId: userId,
        userName: 'JohnDoe',
        userEmail: 'john.doe@example.com'
    };
}

// UserProfileProcessor.js (PascalCase для классов)
import { getUserProfile } from './user-profile.js';

export class UserProfileProcessor {
    constructor(userId) {
        this.userId = userId;
        this.userProfile = getUserProfile(userId);
    }

    printUserProfile() {
        console.log(`User ID: ${this.userProfile.userId}`);
        console.log(`User Name: ${this.userProfile.userName}`);
        console.log(`User Email: ${this.userProfile.userEmail}`);
    }
}

// mainApp.js
import { UserProfileProcessor } from './UserProfileProcessor.js';

const userId = 123;
const userProfileProcessor = new UserProfileProcessor(userId);
userProfileProcessor.printUserProfile();

Объяснение: 

Имена файлов:

  • Используется kebab-case для имен файлов (user-profile.js, main-app.js).
  • PascalCase используется для файла, содержащего класс (UserProfileProcessor.js).

Переменные и функции:

  • camelCase используется для переменных и функций (getUserProfile, userId, userProfileProcessor).
  • PascalCase используется для имен классов (UserProfileProcessor).

Как выбрать нотацию

При выборе нотации (стиля именования) в программировании следует учитывать несколько факторов: язык программирования, правила и соглашения, принятые в команде разработчиков, стандарты проекта, а также личные предпочтения. 

Несколько полезных советов, которые помогут вам определиться с подходящим стилем именования:

  1. Соглашения языка программирования и сообщества

    Различные языки программирования имеют свои рекомендации по стилю именования, которые помогают создавать единообразный и понятный код.

    • Python: рекомендуется использовать snake_case для функций, переменных и методов, и CamelCase для классов и исключений.
    • JavaScript: принято использовать camelCase для имен переменных и функций, а также PascalCase для именования конструкторов и классов.
  2. Соглашения в команде разработчиков

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

  3. Стандарты проекта

    Некоторые проекты имеют свои собственные стандарты и соглашения по стилю именования. Эти стандарты могут включать предпочтительные нотации для различных типов идентификаторов (переменные, функции, классы и т.д.).

  4. Читаемость и понятность кода

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

Типичные ошибки и как их исправить

  • Неоднородное использование стилей именования

Ошибка: Использование разных стилей именования в различных частях кода без четкого соглашения или стандарта.

Исправление: Создайте чёткие правила именования для всего проекта и следуйте им. Например, выберите camelCase для переменных и функций в JavaScript или snake_case для Python. Придерживайтесь этих соглашений, чтобы обеспечить единообразие в коде.

  • Неинформативные имена переменных

Ошибка: Использование слишком коротких или малоинформативных имен переменных.

Исправление: Переменные должны иметь понятные и информативные имена, которые отражают их назначение и контекст использования. Вместо абстрактных имён, таких как «x» или «data», лучше использовать более конкретные имена, например «totalAmount» или «userData».

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

Ошибка: Неправильное использование регистра в camelCase или PascalCase.

Исправление: В camelCase первое слово пишется со строчной буквы, а каждое следующее слово — с заглавной. PascalCase предполагает написание всех слов с заглавной буквы. Соблюдение этих стандартов способствует улучшению читаемости и согласованности кода.

  • Неправильное разделение слов в snake_case или kebab-case

Ошибка: Неправильное разделение слов в snake_case (например, this_is_variable_name) или kebab-case (например, this-is-variable-name).

Исправление: В snake_case и kebab-case слова должны быть разделены одним символом: в snake_case - подчеркиванием _, а в kebab-case - дефисом -. Это улучшает читаемость.

  • Смешение стилей именования

Ошибка: Смешивание разных стилей именования в одном проекте или файле без ясного разделения или причины.

Исправление: Используйте один стиль именования в рамках одного проекта или файла. Если же вам необходимо использовать разные стили (например, из-за интеграции с внешней библиотекой), то обязательно документируйте и объясняйте причины их применения.

Главное, что нужно знать

  1. Виды нотаций: В программировании применяются различные стили именования, такие как camelCase, PascalCase, snake_case, kebab-case и UPPERCASE_SNAKE_CASE. Каждый стиль имеет свои правила использования и контекст применения.
  2. Выбор стиля: При выборе стиля именования важно учитывать соглашения языка программирования, правила проекта и предпочтения команды разработчиков. Это способствует созданию единообразного и легко читаемого кода.
  3. Поддержание консистентности: Важно придерживаться выбранного стиля на протяжении всего проекта или в пределах одного модуля. Это помогает улучшить читаемость кода и облегчить его поддержку и модификацию.
  4. Адаптация к контексту: Иногда требуется использовать разные стили именования из-за интеграции с внешними библиотеками или соблюдения специфических требований. В таких случаях важно четко документировать и объяснять выбор стиля.

Рекомендованные программы обучения

Разработка, сопровождение и обеспечение безопасности информационных системimageРазработка компьютерных игр, дополненной и виртуальной реальностиimageГеймдизайн и разработка игрimageВеб-разработкаimageFullstack-разработчикimageBackend-разработчикimageFrontend-разработчикimageРазработка игровых вселенныхimageРазработка и тестирование программного обеспеченияimageРазработка блокчейн-приложенийimage

Адреса поступления

ЦФО
Москва, Ленинградский пр., д. 80Г
Сокол
+7 495 800–10–01 8 800 100–00–11
banner
Подберите программу обучения, узнайте проходной балл и начните учиться бесплатно
download
Всё самое важное — в личном кабинете абитуриента
Войти
школаколледжуниверситетбизнес-образованиекурсы
image
1000+программ
Образованиеhatдляhatкарьеры

В «Синергии» 1000+ образовательных программ

У нас есть решения для любого уровня, профессии и цели:
01Сформировать прочный фундамент знаний в&nbsp;школе
Сформировать прочный фундамент знаний в школе
02Получить качест&shy;венное среднее профессио&shy;нальное или&nbsp;высшее образование
Получить качест­венное среднее профессио­нальное или высшее образование
03Освоить новую специальность на&nbsp;<span style="white-space:nowrap;">онлайн-курсах</span>
Освоить новую специальность на онлайн-курсах
04Пройти результативную переподготовку или&nbsp;повысить квалификацию
Пройти результативную переподготовку или повысить квалификацию
05Достичь экспертного управленческого уровня с&nbsp;<span style="white-space:nowrap;">программой</span> MBA
Достичь экспертного управленческого уровня с программой MBA
Качество образования подтвержденомеждународными стандартами:
мы состоим в Европейском фонде гарантии качества электронного обучения и Великой хартии европейских университетов, участвуем в Международной ассоциации университетов при ЮНЕСКО
Подобрать программу обучения