# ПоиАИС Web-разработка: Зима-весна 2026 (Магистратура) - Golang
Primary tabs
Forums:
После курса для бакалавров, данный курс ориентируется на магистров той же славной кафедры ПОиАИС ППМ ВГУ.
В относительно коротком курсе планируется разобраться синтаксис и особенности использование Golang и некоторые алгоритмические задачи.
Основные ссылки
- Краткий онлайн-учебник по Golang (в процессе дополнения)
- Плейлист видео с лекций: https://vkvideo.ru/playlist/-58271214_24
Ход курса
| Дата занятия | Домашнее задание |
|---|---|
| 19.02.2026 | Настроить среду разработки (определиться с местом запуска), разобраться с объявлением переменных, констант, определением просты пользовательских типов, понятиями модулей и пакетов, познакомиться с простыми типами данных (уроки с нулевого по 5.1) |
| 26.02.2026 | Изучить работу с указателями, массивами и срезами, позапускать код (уроки с 6ого по 8ой) |
| 5.03.2026 (лекция переносится, но есть небольшое ДЗ) | Изучить особенности работы с хэш-таблицами и управляющие конструкции, в т.ч. способы итерации по списочным структурам (уроки с 9ого по 12ый) |
| 2.04.2026 | Изучить темы "пустого интерфейса" и композиации интерфейсов, а также Разбор задачи про поиск пересений двух списков отрезков времени |
.....и последующие лекции по теории и задачкам
Зачет:
Ожидается
- Знание теории по курсу Го (уроки с 1-ого по 20.6)
- Умение решать алгоритмические задачи подобные этому списку (8 задач на момент завершения курса)
Вопросы по теории Golang:
- Для каких целей проектировали Го? В чем особенности этого языка, к какому типу он относится
- Что такое пакеты? Что такое модули? Какие типы данных в Го вы знаете?
- Что такое указатели? Чем они в целом отличаются от ссылок? Каковы особенности работы с указателями в го?
- Массивы и срезы - какая разница? Отличие вместимости от длины, приведите примере переллокации памятки? В чем отличие передачи переменной в функцию по ссылки от варианта с указателем в Го с учетом возможных переаллокаций памяти?
- Особенности работы с циклами в Го, расскажите что знаете? приведите пример кода
- Что такое замыкания, приведите пример кода
- Отложенные выполнение через defer, приведите примеры. Что такое паника? Приведите пример кода восстановления после паники с помощью defer
- Структуры и методы - расскажите как это работает. Какие виды композации вы знаете - приведите примеры кода
- Что такое интерфейсы в Го. Приведите примеры кода с проверкой кода через switch. Расскажите про композицию интерфейсов, приведите примеры
- Что такое руны? Что под капотом у данного типа? Приведите пример кода - обход строки, получение конкретных символов без обхода
- Горутины - что это. Сколько минимум горутин в программе, Что такое проблема гонки данных (race condition). Синхронизация через WaitGroup. Что происходит побочными горутинами, если главная горутина завершилась раньше их?
- Каналы - что это такое. Чем буфурезированные отличаются от обычных? По какой логике они блокируют выполнение горутин? Состояние взаимоблокировки deadlock - расскажите что это
- Однонаправленные каналы, объявление типа и инициализация. Когда они используются на практике? Закрытие каналов - close() range()
- Как работает select для каналов?Синхронизация горутин через выбор первой завершенной операции - приведите примеры кода
- mutex Мьютексы что это и как они работают. Как они отслеживают работы с памятью? Чем RW мьютекс отливаются от обычного? Чем отличается метод RLock() от обычного Lock()? Приведите примеры
Многопоточность
- Log in to post comments
- 654 reads