Подготовка к интервью

Банк вопросов с собеседований

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

436 вопросов 1634 компании 353 технологии

Усильте резюме перед собеседованием

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

Анализ резюме
Сбросить

Каталог

Результаты поиска

Найдено: 436
Теория

Почему String в Java иммутабелен и как работает String Pool?

Иммутабельность String и String Pool Объекты String в Java нельзя изменить после создания Неизменяемость обеспечивает потокобезопасность и возможность кеширования String Pool — специальная область памяти для строковых…

Читать ответ
Теория

Почему UI разделяют между несколькими Canvas?

графика и интерфейс разделение слоёв для оптимизации обновление только изменённых областей для повышения производительности упрощение обработки событий ввода на разных слоях уменьшение затрат на перерисовку всего UI…

Читать ответ
Теория

Почему boxing значимого типа в ссылочный считается дорогой операцией?

Почему boxing значимого типа в ссылочный считается дорогой операцией? контекст: управление памятью и производительность при упаковке для значимого типа создаётся объект-обёртка в куче (heap) выделение памяти в куче…

Читать ответ
Теория

Почему frame-based логика считается проблемной на собеседовании?

Почему frame-based логика может создавать проблемы? состояния и данные сохраняются при каждом кадровом цикле зависит от задержек и снижения FPS может пропускать события, происходящие между кадрами (недетерминирована)…

Читать ответ
Теория

Почему unowned работает быстрее weak и как это устроено на уровне runtime?

Swift, ARC, управление памятью unowned — неконтролируемая ссылка, которая не увеличивает счётчик ссылок weak — контролируемая ссылка: она изменяет счётчик и выполняет синхронизацию Для weak требуется атомарный доступ…

Читать ответ
Теория

Почему в Unity выбирают UniTask, а не стандартные .NET Task?

Для Unity особенно важны производительность и эффективное использование памяти При работе стандартный Task создаёт множество heap-аллоций и операций боксинга, увеличивая нагрузку на GC UniTask представляет собой…

Читать ответ
Теория

Почему внедрение зависимостей через конструктор с @RequiredArgsConstructor лучше, чем @Autowired в поле, и какие проблемы это решает?

Почему конструкторное внедрение зависимостей с @RequiredArgsConstructor предпочтительнее, чем @Autowired в поле? Dependency Injection (DI) в Spring Конструктор гарантирует явно инициализированное состояние объекта…

Читать ответ
Теория

Почему возникают проблемы, если equals() возвращает true, а hashCode() у объектов различается?

Что случится, если equals() считает два объекта равными, а их hashCode() различаются? Контракт equals/hashCode нарушается Hash-based коллекции (HashMap, HashSet) начинают работать некорректно Равные объекты могут…

Читать ответ
Теория

Почему конкатенация строк в цикле приводит к созданию новых массивов байт и снижает производительность?

В большинстве языков строки являются иммутабельными, то есть неизменяемыми При каждой конкатенации создаётся новый массив байт, куда копируются исходные данные Внутри цикла это приводит к постоянному выделению памяти…

Читать ответ
Теория

Почему линейный поиск работает медленно на больших объёмах данных?

Почему линейный поиск может работать неэффективно алгоритм проверяет элементы один за другим сложность поиска — O(n), поэтому время растёт вместе с объёмом данных при работе с большими массивами он становится очень…

Читать ответ