Golang | Тесты
2.99K subscribers
25 photos
377 links
Cайт easyoffer.ru
Реклама @easyoffer_adv
ВП @easyoffer_vp

Вопросы собесов t.me/+ajHN0OKU1okyZDky
Задачи t.me/+MURwpbl6Nq9kYzJi
Вакансии t.me/+mX_RBWjiMTExODUy
Download Telegram
🤔 Где потокобезопасность map безопасна?

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

Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
💊9👍5
🤔 Какой тип данных используется для представления комплексных чисел в Go?
Anonymous Quiz
53%
complex
9%
float
36%
complex64
2%
double
👍4
🤔 Какой пакет в Go используется для инъекции зависимостей?
Anonymous Quiz
20%
Google Wire
66%
Go Modules
8%
Go Router
6%
Go Test
💊3
🤔 Какие известны виды контекстов?

1. context.Background:
- Основной контекст, используемый как корень.
2. context.WithCancel:
- Позволяет отменить выполнение всех дочерних контекстов.
3. context.WithTimeout:
- Устанавливает лимит времени на выполнение операций.
4. context.WithValue:
- Передача ключ-значений между горутинами.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6🤔2
🤔 Какой метод используется для расширения емкости пула?
Anonymous Quiz
26%
Increase
45%
Expand
28%
Extend
1%
Augment
💊1
🤔 Какой метод из пакета "sync" используется для пробуждения всех горутин, ожидающих на условной переменной в Go?
Anonymous Quiz
26%
NotifyAll
30%
SignalAll
19%
Broadcast
25%
WakeUp
🤔 Что находится перед названием метода?

Перед названием метода указывается ресивер — переменная, к которой метод привязан. Он описывается в круглых скобках перед именем метода и указывает, для какого типа метод определён.
Здесь u *User — это ресивер. Он определяет, что метод PrintName относится к типу User, и при вызове будет доступ к его полям.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
🤔 Как в Go создать буферизованный канал для целых чисел на 10 элементов?
Anonymous Quiz
0%
make(chan int)
95%
make(chan int, 10)
4%
make(chan int, buffered:10)
0%
make(chan int, 10elements)
💊2
🤔 Каким способом в Go можно передать дополнительную информацию функции, не изменяя ее сигнатуру?
Anonymous Quiz
29%
Использовать декораторы
40%
Передать встраиваемую структуру
15%
Использовать функциональные опции
17%
Применить наследование
💊6🔥1
🤔 Безопасен ли map?

Стандартный map небезопасен для многопоточного доступа. Используйте синхронизацию или специальные структуры данных.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
🤔 Какой механизм в Go позволяет одной функции иметь несколько определений на основе типа аргументов?
Anonymous Quiz
21%
Перегрузка функций
3%
Шаблоны
75%
Дженерики
1%
Макросы
💊1
🤔 Как преобразовать интерфейс к другому типу?

Для преобразования используется утверждение типа (type assertion): value, ok := interfaceValue.(TargetType). Оно проверяет, принадлежит ли значение интерфейса целевому типу.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3🔥2💊2
🤔 Как объявить и инициализировать пустую структуру Person в Go?
Anonymous Quiz
81%
person := Person{}
9%
person := new(Person)
2%
person := Person()
8%
person := make(Person)
💊10
🤔 Какой паттерн проектирования в Go может служить альтернативой наследованию и обеспечивает расширяемость кода?
Anonymous Quiz
15%
Синглтон
8%
Наблюдатель
61%
Декоратор
16%
Стратегия
💊1
🤔 Возможен ли JOIN со вложенными запросами?

Да, JOIN можно использовать со вложенными (subquery) запросами. Варианты:
- JOIN с подзапросом, возвращающим таблицу (SELECT ... FROM (SELECT ...) AS subquery JOIN ...).
- JOIN с подзапросом в ON (SELECT ... FROM table1 JOIN (SELECT ...) AS subquery ON ...).
- Использование подзапроса в WHERE или IN, но это менее эффективно, чем JOIN.
Вложенные запросы могут снижать производительность, поэтому лучше использовать индексы и анализировать EXPLAIN.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
🤔 Какая проблема может возникнуть при использовании инъекции зависимостей?
Anonymous Quiz
67%
Сложность управления зависимостями
4%
Повышенная производительность
4%
Упрощение кода
25%
Снижение модульности
💊7
🤔 Что известно про паттерн Singleton (Одиночка)?

Singleton гарантирует, что у класса есть только один экземпляр, и предоставляет глобальную точку доступа к нему.
Характеристики:
- Ленивая инициализация (создаётся при первом вызове).
- Применяется для объектов, которые должны быть уникальны: логгеры, конфигурация, доступ к БД.
- В Go реализуется через глобальные переменные и sync.Once для потокобезопасной инициализации.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5
🤔 Как в Go объявить метод SetAge для структуры Person, который устанавливает новый возраст?
Anonymous Quiz
93%
func (p *Person) SetAge(newAge int) { p.age = newAge }
1%
method SetAge(p Person, newAge int) { p.age = newAge }
5%
func SetAge(p *Person, newAge int) { p.age = newAge }
1%
method (p Person) SetAge(newAge int) { p.age = newAge }
💊7