❓ Когда стоит использовать context.TODO() вместо context.Background()
Anonymous Poll
6%
Нужно гарантировать, что контекст будет отменён при завершении функции
3%
Когда передаются данные через контекст
90%
Контекст ещё не определён, и вам нужно временно использовать заглушку
3%
Когда контекст должен быть передан другим компонентам без изменений
❗️ Я задачи этой недели
Anonymous Poll
32%
Легко решал
14%
Нормально решал
7%
Еле решал
55%
Вообще не решал
❓ Что выведет код
Anonymous Poll
31%
data.val = <nil>
28%
data.val = 0
21%
data.val = 5
45%
data.val = undefined
🤡13
❓ Что происходит, если структура в Go содержит поле с таким же именем, как у поля во встроенной структуре
Anonymous Poll
10%
Поле во встроенной структуре становится недоступным, так как оно скрывается полем внешней структуры.
12%
Структура вызывает ошибку компиляции из-за дублирования имен.
79%
Поле во встроенной структуре остаётся доступным через обращение к внутренней структуре
2%
Невозможно обратиться к скрытому полю, так как это вызовет ошибку компиляции.
❓ Что выведет код
Anonymous Poll
13%
avengers: end game & midnight in paris
13%
avengers: end game & end game
6%
avengers: game & midnight paris
69%
Ошибка комиляции
🤡15
❓Что будет выведено, если вызвать defer внутри цикла в Go
Anonymous Poll
9%
Все отложенные вызовы будут выполнены до выхода из цикла
8%
defer не работает в цикле, и программа вызовет ошибку
11%
Все отложенные вызовы будут выполнены после завершения цикла, но в порядке их вызова
73%
Все отложенные вызовы будут выполнены после завершения цикла, но в обратном порядке
❓Как в Go можно определить, что канал закрыт
Anonymous Poll
14%
Канал можно проверить на nil, чтобы узнать, закрыт ли он
65%
Можно использовать второй результат от операции чтения из канала
11%
Для проверки канала используется встроенная функция isClosed()
15%
Канал можно проверить только через конструкцию select, которая исключает закрытие
👍1
❓ На прошлой неделе были _______ задачи
Anonymous Poll
9%
Крутые
14%
Хорошие
20%
Средние
57%
Скучные
❓ Каким образом можно проверить, что значение интерфейса в Go не nil
Anonymous Poll
34%
Проверить второй результат после утверждения типа с помощью ok
52%
Использовать оператор == nil, чтобы проверить интерфейс на nil
11%
Проверить тип интерфейса с помощью функции reflect.TypeOf()
9%
Для проверки интерфейса используется встроенная функция isNil()
❤1
❓ Какая особенность компилятора Go позволяет исключить явное управление памятью и очистку памяти, как в C/C++
Anonymous Poll
96%
Реализация сборщика мусора (Garbage Collector)
2%
Использование указателей и ручное управление памятью
2%
Оптимизация работы с динамическими данными
2%
Преимущество использования Go как языка с явной типизацией
😁3
❓ Что нужно поменять, чтобы код выводил [10 5 2]
Anonymous Poll
8%
Нужно изменить fmt.Print(s) на fmt.Println(s)
82%
Нужно вернуть изменённый слайс в функции add и присвоить его в месте вызова
1%
Нужно вызвать функцию add до объявления слайса.
9%
Изменить слайс на массив
❤1
❓Что произойдёт, если вы попытаетесь разыменовать nil-указатель на структуру в Go
Anonymous Poll
13%
Код скомпилируется, но вернётся нулевое значение
75%
Произойдёт паника
5%
Код выполнится без ошибок, но структура не будет инициализирована
10%
Код вызовет ошибку на этапе компиляции
👍2🤔1
❓Что будет выведено, если программа использует пакет sync с sync.Once для запуска функции несколько раз
Anonymous Poll
85%
Функция выполнится только один раз, независимо от количества вызовов
2%
Функция будет выполняться каждый раз при вызове
6%
Функция выполнится только при первом вызове, но результат будет кэширован
8%
Программа завершится с ошибкой, так как sync.Once не может быть использован многократно
❓ Что произойдёт при попытке открыть уже закрытый канал в Go
Anonymous Poll
13%
Программа завершится с ошибкой компиляции
14%
Канал будет снова открыт автоматически
9%
Программа не завершится, но операция будет проигнорирована
66%
Код вызовет панику
👍1