wayground logo

Free Printable Worksheets

Font size

S
M
L
XL
Worksheets

Вопросы по языку Go

Total questions: 51

Worksheet time: 28mins

Name
Class
Date
1.

Напишите свои ФИО (в формате: Примеров Пример Примерович)

4 lines
2.

Что такое Goroutine?

a)

Тип данных в Go

b)

Легковесный поток выполнения

c)

Функция для обработки ошибок

d)

Структура данных для хранения строк

3.

Какой оператор используется для объявления переменной в Go?

a)

var

b)

let

c)

const

d)

dim

4.

Какой символ используется для краткого объявления переменной и присваивания значения в Go?

a)

=

b)

==

c)

:=

d)

->

5.

Какой из этих типов данных не является встроенным в Go?

a)

int

b)

float64

c)

string

d)

object

6.

Как объявить константу в Go?

a)

var myConst int = 10

b)

let myConst = 10

c)

const myConst = 10

d)

final myConst int = 10

7.

Что делает функция make() в Go?

a)

Создает новый тип данных

b)

Выделяет память для срезов (slices), карт (maps) и каналов (channels)

c)

Создает новый поток (goroutine)

d)

Компилирует программу

8.

Какой символ используется для доступа к полям структуры в Go?

a)

->

b)

.

c)

::

d)

=>

9.

Что такое defer в Go?

a)

Ключевое слово для объявления переменной

b)

Оператор для отложенного выполнения функции до выхода из текущей функции

c)

Ключевое слово для обработки ошибок

d)

Функция для логирования

10.

Какое значение по умолчанию присваивается неинициализированной переменной типа int в Go?

a)

null

b)

-1

c)

0

d)

undefined

11.

Какой символ используется для игнорирования возвращаемого значения функции в Go?

a)

_ (подчеркивание)

b)

nil

c)

void

d)

ignore

12.

Как объявить функцию в Go?

a)

function myFunction() {}

b)

def myFunction():

c)

func myFunction() {}

d)

void myFunction() {}

13.

Какой ключевое слово используется для возврата значения из функции в Go?

a)

exit

b)

yield

c)

return

d)

break

14.

Как передать аргумент по ссылке в Go?

a)

Использовать ключевое слово ref

b)

Аргументы в Go всегда передаются по ссылке

c)

Использовать указатели (*)

d)

Невозможно передать аргумент по ссылке

15.

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

a)

if-else

b)

switch

c)

for

d)

while

16.

Какой цикл используется для итерации по срезу (slice) или карте (map) в Go?

a)

while

b)

for

c)

foreach

d)

do-while

17.

Какое ключевое слово используется для прерывания цикла в Go?

a)

stop

b)

end

c)

break

d)

exit

18.

Какое ключевое слово используется для перехода к следующей итерации цикла в Go?

a)

skip

b)

next

c)

continue

d)

pass

19.

Может ли функция возвращать несколько значений в Go?

a)

Нет

b)

Да

c)

Только если используется interface{}

d)

Только если используются указатели

20.

Что такое вариативная функция (variadic function) в Go?

a)

Функция, которая может возвращать разные типы данных

b)

Функция, которая может принимать переменное количество аргументов одного типа

c)

Функция, которая выполняется в отдельном потоке

d)

Функция, которая не принимает аргументов

21.

Как указать, что функция может возвращать ошибку в Go?

a)

С помощью ключевого слова error

b)

Функции в Go не могут возвращать ошибки

c)

Функция должна возвращать тип error в качестве одного из возвращаемых значений

d)

Использовать try-catch блок

22.

Как определить структуру в Go?

a)

class MyStruct {}

b)

struct MyStruct {}

c)

type MyStruct {}

d)

data MyStruct {}

23.

Что такое срез (slice) в Go?

a)

Массив фиксированного размера

b)

Динамически изменяемый массив, ссылающийся на часть базового массива

c)

Список связанных элементов

d)

Хеш-таблица

24.

Как создать срез (slice) из массива в Go?

a)

mySlice = myArray.slice(1, 3)

b)

mySlice = myArray[1:3]

c)

mySlice = myArray.subArray(1, 3)

d)

mySlice = myArray.range(1, 3)

25.

Как добавить элемент в срез (slice) в Go?

a)

mySlice.add(element)

b)

mySlice.append(element)

c)

append(mySlice, element)

d)

mySlice = mySlice + element

26.

Что делает функция cap() в Go?

a)

Возвращает длину среза (slice)

b)

Возвращает вместимость (capacity) среза (slice)

c)

Очищает срез (slice)

d)

Увеличивает размер среза (slice)

27.

Как определить карту (map) в Go?

a)

map[keyType]valueType

b)

dictionary[keyType]valueType

c)

hash[keyType]valueType

d)

object[keyType]valueType

28.

Как получить значение из карты (map) по ключу в Go?

a)

myMap.get(key)

b)

myMap[key]

c)

myMap.value(key)

d)

myMap.lookup(key)

29.

Как проверить, существует ли ключ в карте (map) в Go?

a)

if key in myMap {}

b)

if myMap.containsKey(key) {}

c)

value, ok := myMap[key]; if ok {}

d)

if myMap.exists(key) {}

30.

Как удалить элемент из карты (map) в Go?

a)

myMap.remove(key)

b)

myMap.delete(key)

c)

delete(myMap, key)

d)

del myMap[key]

31.

Какое значение возвращается, если ключ не найден в карте (map) в Go?

a)

null

b)

undefined

c)

Значение по умолчанию для типа значения (zero value)

d)

Вызывается ошибка (panic)

32.

Какое ключевое слово используется для запуска новой Goroutine?

a)

thread

b)

start

c)

go

d)

async

33.

Что такое канал (channel) в Go?

a)

Тип данных для хранения строк

b)

Механизм для синхронизации и обмена данными между Goroutine

c)

Структура данных для хранения чисел

d)

Функция для обработки ошибок

34.

Как отправить данные в канал (channel) в Go?

a)

myChannel.send(data)

b)

myChannel <- data

c)

data -> myChannel

d)

myChannel.put(data)

35.

Как получить данные из канала (channel) в Go?

a)

myChannel.receive()

b)

<- myChannel

c)

myChannel ->

d)

myChannel.get()

36.

Что делает оператор close() с каналом (channel) в Go?

a)

Удаляет канал (channel)

b)

Блокирует канал (channel)

c)

Указывает, что больше данных не будет отправлено в канал (channel)

d)

Очищает данные из канала (channel)

37.

Что такое интерфейс (interface) в Go?

a)

Класс, от которого нельзя создавать объекты

b)

Набор методов, которые должен реализовать тип, чтобы соответствовать интерфейсу

c)

Структура данных для хранения строк

d)

Функция для обработки ошибок

38.

Как определить интерфейс (interface) в Go?

a)

class MyInterface {}

b)

interface MyInterface {}

c)

type MyInterface interface {}

d)

protocol MyInterface {}

39.

Что означает "удовлетворение интерфейсу" в Go?

a)

Реализация всех методов, определенных в интерфейсе

b)

Наследование от интерфейса

c)

Использование ключевого слова implements

d)

Совпадение имени типа с именем интерфейса

40.

Зачем нужны интерфейсы (interfaces) в Go?

a)

Для реализации полиморфизма и написания более гибкого кода

b)

Для повышения производительности

c)

Для упрощения синтаксиса

d)

Интерфейсы не нужны в Go

41.

Как проверить, реализует ли тип интерфейс в Go?

a)

С помощью оператора instanceof

b)

Go использует статическую типизацию, поэтому это известно во время компиляции

c)

С помощью type assertion: value.(MyInterface)

d)

С помощью ключевого слова implements

42.

Как обработать ошибку в Go?

a)

С помощью try-catch блока

b)

С помощью if err != nil {} (проверка на nil)

c)

С помощью ключевого слова error

d)

Ошибки в Go не обрабатываются

43.

Что возвращает функция panic() в Go?

a)

Обнуляет все переменные

b)

Генерирует ошибку времени выполнения (runtime error), которая останавливает выполнение программы

c)

Перезапускает программу

d)

Возвращает null

44.

Как восстановить программу после вызова panic() в Go?

a)

С помощью try-catch блока

b)

С помощью recover() функции внутри отложенной (deferred) функции

c)

Автоматически восстанавливается

d)

Невозможно восстановить программу после panic()

45.

Что такое пакет (package) в Go?

a)

Функция для обработки ошибок

b)

Коллекция связанных файлов Go, скомпилированных вместе

c)

Тип данных для хранения строк

d)

Виртуальная машина Go

46.

Как импортировать пакет в Go?

a)

#include "myPackage"

b)

import "myPackage"

c)

require "myPackage"

d)

use myPackage

47.

Какой пакет является точкой входа в программу Go?

a)

os

b)

main

c)

fmt

d)

runtime

48.

Что делает функция init() в Go?

a)

Запускает Goroutine

b)

Инициализирует пакет (выполняется автоматически при загрузке пакета)

c)

Обрабатывает ошибки

d)

Завершает программу

49.

Как установить зависимости проекта в Go?

a)

С помощью npm install

b)

С помощью pip install

c)

С помощью go get или go mod

d)

Зависимости устанавливаются вручную

50.

Что делает команда go build?

a)

Запускает программу

b)

Компилирует программу

c)

Тестирует программу

d)

Форматирует код

51.

Что делает команда go run?

a)

Компилирует и запускает программу

b)

Только компилирует программу

c)

Только запускает программу

d)

Удаляет программу