❓Как в Go можно определить, что канал закрыт
  Anonymous Poll
    15%
    Канал можно проверить на nil, чтобы узнать, закрыт ли он
      
    65%
    Можно использовать второй результат от операции чтения из канала
      
    11%
    Для проверки канала используется встроенная функция isClosed()
      
    15%
    Канал можно проверить только через конструкцию select, которая исключает закрытие
      
    👍1
  ❓ На прошлой неделе были _______ задачи
  Anonymous Poll
    9%
    Крутые
      
    14%
    Хорошие
      
    20%
    Средние
      
    57%
    Скучные
      
    ❓ Каким образом можно проверить, что значение интерфейса в Go не nil
  Anonymous Poll
    35%
    Проверить второй результат после утверждения типа с помощью ok
      
    52%
    Использовать оператор == nil, чтобы проверить интерфейс на nil
      
    11%
    Проверить тип интерфейса с помощью функции reflect.TypeOf()
      
    9%
    Для проверки интерфейса используется встроенная функция isNil()
      
    ❤1
  ❓ Какая особенность компилятора Go позволяет исключить явное управление памятью и очистку памяти, как в C/C++
  Anonymous Poll
    97%
    Реализация сборщика мусора (Garbage Collector)
      
    2%
    Использование указателей и ручное управление памятью
      
    2%
    Оптимизация работы с динамическими данными
      
    2%
    Преимущество использования Go как языка с явной типизацией
      
    😁3
  ❓ Что нужно поменять, чтобы код выводил [10 5 2]
  Anonymous Poll
    8%
    Нужно изменить fmt.Print(s) на fmt.Println(s)
      
    83%
    Нужно вернуть изменённый слайс в функции add и присвоить его в месте вызова
      
    1%
    Нужно вызвать функцию add до объявления слайса.
      
    9%
    Изменить слайс на массив
      
    ❤1
  ❓Что произойдёт, если вы попытаетесь разыменовать nil-указатель на структуру в Go
  Anonymous Poll
    13%
    Код скомпилируется, но вернётся нулевое значение
      
    75%
    Произойдёт паника
      
    5%
    Код выполнится без ошибок, но структура не будет инициализирована
      
    10%
    Код вызовет ошибку на этапе компиляции
      
    👍2🤔1
  ❓Что будет выведено, если программа использует пакет sync с sync.Once для запуска функции несколько раз
  Anonymous Poll
    85%
    Функция выполнится только один раз, независимо от количества вызовов
      
    2%
    Функция будет выполняться каждый раз при вызове
      
    7%
    Функция выполнится только при первом вызове, но результат будет кэширован
      
    7%
    Программа завершится с ошибкой, так как sync.Once не может быть использован многократно
      
    ❓ Что произойдёт при попытке открыть уже закрытый канал в Go
  Anonymous Poll
    13%
    Программа завершится с ошибкой компиляции
      
    14%
    Канал будет снова открыт автоматически
      
    8%
    Программа не завершится, но операция будет проигнорирована
      
    67%
    Код вызовет панику
      
    👍1
  ❓ Какая основная функция типа sync.WaitGroup в Go
  Anonymous Poll
    93%
    Ожидает завершения группы горутин
      
    3%
    Выполняет операции в космосе
      
    3%
    Ожидает данные из канала
      
    2%
    Позволяет «отдохнуть», не беспокоясь о завершении процесса
      
    👍1
  ❓ Как реализуется клонирование сложных объектов, таких как директории, с вложенными файлами и подкаталогами, в контексте паттерна «Прототип»
  Anonymous Poll
    25%
    Копируется только сама директория, без вложенных объектов
      
    5%
    Вложенные элементы нужно клонировать вручную
      
    63%
    Клонируются все вложенные элементы рекурсивно
      
    7%
    Клонируется пустая директория
      
    🤡1
  🤡17
  ❓ Что произойдёт, если в defer-функции использовать recover() без вызова panic
  Anonymous Poll
    5%
    Возникнет паника
      
    78%
    recover() вернёт nil
      
    12%
    recover() будет ждать панику
      
    5%
    defer не завершится