GO Go  ·  20 вопросов  ·  ~55 мин  ·  ⏱ Таймер 55:00  ·  Лёгкий  · 

Пакеты и модули

Проверяет границы пакета, экспорт имён, назначение `go.mod`, выбор версии и воспроизводимую работу с зависимостями. В тесте 20 вопросов, из них 12 требуют чтения кода, команд или диагностических фрагментов. Задания опираются на устойчивые правила современного Go; если поведение зависит от версии, это оговорено в самом вопросе.

Отвечено: 0 из 20
⏱ --:--
0%
💡 Инструкция: Выберите один ответ из пяти. На 20 вопросов отведено 55 минут. В каждом вопросе верен только один вариант. После завершения вы увидите общий результат и результаты по 4 тематическим шкалам с объяснениями и практическими рекомендациями.
Вопрос 1 из 20
Команда проверяет решение по теме «Устройство пакета». Какое описание результата совпадает с правилами Go?
GoУстройство пакета: результат выполнения
// Фрагмент для трассировки.
package store

type Item struct{ ID int }
func Find(id int) Item { return Item{ID:id} }
Вопрос 2 из 20
Перед публикацией кода по теме «Устройство пакета» нужно уточнить контракт. Какая правка устраняет причину, а не маскирует её проявление?
GoУстройство пакета: фрагмент на ревью
// Фрагмент из ревью: требуется выбрать безопасную правку.
package store

type Item struct{ ID int }
func Find(id int) Item { return Item{ID:id} }
Вопрос 3 из 20
В рабочем примере по теме «Устройство пакета» важно отделить гарантию от догадки. Что именно гарантирует Go в этой ситуации?
GoУстройство пакета: проверка контракта
// Определите правило Go, которое объясняет результат.
package store

type Item struct{ ID int }
func Find(id int) Item { return Item{ID:id} }
Вопрос 4 из 20
Фрагмент относится к теме «Устройство пакета». Что нельзя автоматически переносить на похожий код?
Вопрос 5 из 20
На ревью разбирают тему «Устройство пакета». Как оценить этот подход для производственного кода?
Вопрос 6 из 20
Перед публикацией кода по теме «Экспорт» нужно уточнить контракт. Какой итог можно предсказать без пробного запуска?
GoЭкспорт: результат выполнения
// Фрагмент для трассировки.
package user

type User struct {
    Name string
    age int
}
Вопрос 7 из 20
В рабочем примере по теме «Экспорт» важно отделить гарантию от догадки. Как изменить решение, не ломая его исходную задачу?
GoЭкспорт: фрагмент на ревью
// Фрагмент из ревью: требуется выбрать безопасную правку.
package user

type User struct {
    Name string
    age int
}
Вопрос 8 из 20
Фрагмент относится к теме «Экспорт». Какое утверждение остаётся верным на всех поддерживаемых платформах?
GoЭкспорт: проверка контракта
// Определите правило Go, которое объясняет результат.
package user

type User struct {
    Name string
    age int
}
Вопрос 9 из 20
На ревью разбирают тему «Экспорт». Какое условие нельзя считать выполненным по умолчанию?
Вопрос 10 из 20
В разделе «Экспорт» показан конкретный случай. Какой вариант честно называет и преимущество, и издержку?
Вопрос 11 из 20
В рабочем примере по теме «Файл модуля go.mod» важно отделить гарантию от догадки. Как точнее всего описать выполнение фрагмента?
ТекстФайл модуля go.mod: результат выполнения
module example.com/app

go 1.26

require example.com/lib v1.4.0
Вопрос 12 из 20
Фрагмент относится к теме «Файл модуля go.mod». Какая доработка делает поведение явным для вызывающего кода?
ТекстФайл модуля go.mod: фрагмент на ревью
module example.com/app

go 1.26

require example.com/lib v1.4.0

Контекст проверки: Файл модуля go.mod.
Вопрос 13 из 20
На ревью разбирают тему «Файл модуля go.mod». Какое правило достаточно применить для проверки ответа?
ТекстФайл модуля go.mod: проверка контракта
module example.com/app

go 1.26

require example.com/lib v1.4.0

Вопрос относится к теме: Файл модуля go.mod.
Вопрос 14 из 20
В разделе «Файл модуля go.mod» показан конкретный случай. Какой граничный случай нужно проверить отдельно?
Вопрос 15 из 20
Команда проверяет решение по теме «Файл модуля go.mod». Какой инженерный компромисс здесь действительно существует?
Вопрос 16 из 20
Фрагмент относится к теме «Версии модулей». Что именно произойдёт при выполнении показанного фрагмента?
ТекстВерсии модулей: результат выполнения
module example.com/app

go 1.26

require example.com/lib/v2 v2.3.1
Вопрос 17 из 20
На ревью разбирают тему «Версии модулей». Как исправить основной риск без ненужной перестройки решения?
ТекстВерсии модулей: фрагмент на ревью
module example.com/app

go 1.26

require example.com/lib/v2 v2.3.1

Контекст проверки: Версии модулей.
Вопрос 18 из 20
В разделе «Версии модулей» показан конкретный случай. Какой принцип позволяет вывести ответ без запуска программы?
ТекстВерсии модулей: проверка контракта
module example.com/app

go 1.26

require example.com/lib/v2 v2.3.1

Вопрос относится к теме: Версии модулей.
Вопрос 19 из 20
Команда проверяет решение по теме «Версии модулей». Какой контрпример разрушит слишком широкое толкование правила?
Вопрос 20 из 20
Перед публикацией кода по теме «Версии модулей» нужно уточнить контракт. Что важно учесть помимо формальной корректности?

Ответьте на все 20 вопросов, чтобы получить результат

🔗 Встроить тест на свой сайт (iframe) ▼

Скопируйте код и вставьте в любое место на вашем сайте:

Также доступна прямая ссылка на embed-страницу