Префиксы is, has, can, should… в нейминге переменных и функций

92c2325b177ab8c99d96122d50bf1e0f

Зачем?

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

  1. Префиксы is, has, can, should:

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

    • Упрощают написание условных конструкций: Программист может легко написать условия, основываясь на этих префиксах, например, if (canSave) {...}.

  2. Префиксы min, max:

    • Четко определяют ограничения: Помогают установить и соблюдать границы значений для переменных, что важно во многих алгоритмах и бизнес-логиках.

  3. Префиксы prev, next:

    • Полезны в алгоритмах и структурах данных: Особенно актуальны при работе с списками, деревьями и другими структурами, где необходимо отслеживать элементы до или после текущего.

  4. Префиксы total, count, num:

    • Описывают количественные характеристики: Идеально подходят для переменных, которые хранят количество элементов, общие суммы и т.д., делая код интуитивно понятным при работе с числами.

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

Переменные

Префикс is

Префикс is обычно используется для булевых переменных, которые представляют состояние или качество. Этот префикс говорит о том, что переменная содержит ответ на вопрос «Это…?» или «Это в состоянии…?». Примеры:

  • isActive — активен ли?

  • isCompleted — завершен ли?

  • isVisible — видим ли?

  • isStart — это начало?

Префикс has

Префикс has используется, когда переменная указывает на наличие чего-либо. Это может быть свойство, элемент или некоторая возможность. Примеры:

  • hasChildren — имеются ли дети (подразумеваются дочерние элементы в дереве компонентов, например)?

  • hasHeader — имеется ли заголовок?

  • hasStarted — началось ли что-то?

Примеры выбора

В зависимости от контекста:

  • Если хотите указать, что процесс или действие началось, правильнее будет использовать hasStarted.

  • Если переменная должна указывать на то, что какой-то объект или сущность является «стартом» или начальной точкой, лучше подойдет isStart.

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

Префикс can

Префикс can используется для переменных, которые указывают на возможность выполнения действия. Это подразумевает разрешение или способность что-то сделать. Например:

  • canEdit — может ли пользователь редактировать содержимое.

  • canSave — может ли пользователь сохранить изменения.

  • canDelete — может ли пользователь удалить элемент.

Префикс should

Префикс should часто используется для управления условным поведением, особенно в тестах или в коде, где необходимо выполнить условие. Например:

  • shouldUpdate — должно ли обновиться состояние или компонент.

  • shouldRender — должен ли компонент рендериться.

  • shouldFetchData — должны ли загружаться данные.

Префикс count или num

Для переменных, хранящих числовые значения, особенно если они относятся к количеству чего-либо, можно использовать префикс count или num. Например:

  • countItems — количество предметов.

  • numPages — количество страниц.

  • countErrors — количество ошибок.

Префикс min и max

Префиксы min и max используются для обозначения минимального и максимального значений соответственно. Это может быть полезно в настройках и конфигурациях. Например:

  • minLength — минимальная длина.

  • maxHeight — максимальная высота.

  • minPrice — минимальная цена.

Префикс prev и next

Эти префиксы используются для отслеживания предыдущего или следующего состояний в реактивных фреймворках или когда нужно сохранять историю изменений. Например:

Префикс total

Для общих сумм или итоговых значений используется префикс total. Это помогает в расчетах и подведении итогов. Например:

Выбор правильного префикса помогает улучшить понимание кода и упрощает поддержку и расширение программных решений.

Функции

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

1. get

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

  • getTotal

  • getUsername

  • getFormattedDate

2. set

Применяется в функциях, которые устанавливают или изменяют значение:

  • setUsername

  • setItemCount

  • setPreferences

3. calc или calculate

Означает, что функция выполняет некоторые вычисления и возвращает результат:

  • calculateInterest

  • calcTotalPrice

  • calculateAge

4. create

Используется для функций, создающих новый объект или экземпляр чего-либо:

  • createUser

  • createReport

  • createConnection

5. check

Используется в функциях, которые проверяют условие и обычно возвращают булево значение:

  • checkValidity

  • checkStatus

  • checkPermissions

6. is или has

Применяется для функций, возвращающих булево значение, указывающее на состояние или наличие чего-то:

  • isActive

  • hasChildren

  • isAvailable

7. update

Используется для функций, которые обновляют существующие данные или состояние:

  • updateProfile

  • updateRecord

  • updateSettings

8. handle

Часто используется для названия функций-обработчиков, которые реагируют на события:

  • handleClick

  • handleInputChange

  • handleSubmit

9. fetch

Применяется для функций, которые получают данные из внешних источников, например, через API:

  • fetchData

  • fetchUserDetails

  • fetchPosts

10. remove или delete

Используется в функциях, которые удаляют элементы:

  • removeItem

  • deleteUser

  • removeEventListener

11. show или hide

Используется для функций, которые контролируют видимость элементов:

  • showMenu

  • hideAlert

  • showMoreDetails

12. toggle

Применяется в функциях, которые переключают состояние между двумя значениями:

  • toggleCheckbox

  • toggleVisibility

  • toggleFullscreen

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

© Habrahabr.ru