Interview Lab
Interview Lab
@InterviewLabPro

Вопрос на собесе, который почти всегда недооценивают: **что плохого в null?**

Вопрос на собесе, который почти всегда недооценивают: **что плохого в null?**

Спойлер: проблема не в самом значении, а в том, что оно превращает код в минное поле.

### 3 вещи, которые должен сказать сильный кандидат:
1. **null ломает контракт функции**
Вместо одного понятного результата ты получаешь два сценария: «данные есть» и «данных нет». И если это не оговорено явно — привет, баги.

2. **null прячет ошибки до runtime**
Компилятор молчит, тесты могут не покрыть кейс, а прод уже лежит. Особенно весело в больших системах, где null гуляет через 5 слоёв.

3. **null усложняет чтение и поддержку**
Каждый доступ к полю/методу надо проверять. Код разрастается, логика дробится, а собеседования потом превращаются в поиск NPE по диагонали.

Как отвечать на собесе нормально:
- не ругать null как «зло абсолютное»;
- объяснить, **почему он опасен в конкретной архитектуре**;
- предложить альтернативы: `Optional`, явные ошибки, результат-тип, nullable-аннотации, строгие контракты.

Хороший финал ответа:
**«null — это не баг языка, а источник неявности. Чем раньше мы сделаем отсутствие значения явным, тем дешевле система в поддержке».**
Этот пост опубликован в Telegram-канале Interview Lab. Подписаться можно по ссылке: @InterviewLabPro.
jobs

Свежие посты в категории «Jobs & Careers»

Все каналы категории →

start

Готовы запустить рекламу через сеть public.tg?

Новый оффер, продукт, GEO, кейс, событие или партнёрский запуск — соберём маршрут под задачу и отдадим медиаплан.

Telegram для медиаплана: @AFFtop_connect. Быстрый тест: $20 за канал, $1000 за пакет по сети.