Встречается на собеседованиях • сегодня
Что такое когнитивная сложность кода
Когнитивная сложность — это метрика, оценивающая, насколько сложно понять и поддерживать код. В отличие от цикломатической сложности (которая считает ветвления), она учитывает вложенность, логические операторы, прерывания потока (break/continue) и другие факторы, усложняющие восприятие.
Пример:
python
# Высокая когнитивная сложность
def process_data(data):
result = []
for item in data:
if item.is_valid():
for subitem in item.values:
if subitem > 0:
result.append(subitem * 2)
else:
continue
else:
result.append(None)
return resultКак снизить:
- Уменьшать вложенность (early returns, guard clauses).
- Разбивать на мелкие функции.
- Использовать comprehensions или встроенные функции.
Инструменты:
radon cc(Python) или плагины для IDE (SonarQube, PyCharm).

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы