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

Вопросы на собеседовании по Golang

866 вопросов по Golang с технических собеседований

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

Что проверяют на интервью

Как устроена подборка

На странице собраны вопросы по Golang — от проверки базовых принципов до практического применения и архитектурных решений. В подборке чаще встречаются темы: go, backend, concurrency.

Каталог

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

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

Как можно использовать встроенные структуры в Go для имитации наследования? Что это даёт и для чего используется?

В Go нет классического наследования, как в объектно-ориентированных языках, но встроенные структуры (embedding) позволяют имитировать его.

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

Как работает map под капотом в новых версиях Go, что изменилось?

В новых версиях Go (начиная с Go 1.9 и далее) внутреннее устройство map было значительно улучшено для повышения производительности и уменьшения фрагментации памяти.

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

Code review: кэш на Go с мьютексом. Найди проблемы и предложи улучшения. Условие: нагрузка чтение/запись 80/20.

При реализации кэша на Go с использованием мьютекса под нагрузку чтения/записи 80/20 основная проблема — блокировка всех операций чтения и записи одним мьютексом, что снижает производительность при частых чтениях.

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

Как называется в Go подход, когда создаёшь канал, закрываешь его, потом из него читаешь? В чём преимущество закрытия канала против отправки в него значения?

Этот подход называется "закрытие канала" (channel closing) в Go. Когда канал закрывается с помощью close(ch), это сигнализирует получателям, что больше значений не будет.

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

Расскажи про map в Go: как устроена, какая сложность операций в среднем и худшем случае.

Высокая частота коллизий в структуре данных Map (например, хеш-таблице) негативно влияет на производительность, так как несколько ключей попадают в одну и ту же корзину (bucket).

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

В чём разница между методами структуры с получателем по значению и по указателю в Go, когда выбирать каждый вариант?

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

Читать ответ