От первой программы до backend-проекта на Go
Изучите основы Go, затем соберите сервис обработки заданий: HTTP, очередь, воркеры, восстановление после перезапуска и защита архитектуры. Каждый этап заканчивается работающим кодом и проверкой.
Главы, задания, тесты и эталон доступны бесплатно, без регистрации. Нужны компьютер, редактор и Go 1.25 или новее. Если вы только начали программировать, первый этап проведёт вас через курс основ.
Один проект на весь путь
Скачайте заготовку, распакуйте архив и откройте README.md. Сервер и проверки работают локально на стандартной библиотеке Go. Платные API и облачные сервисы не нужны.
Эталон и разбор решения
Сначала попробуйте реализовать этап самостоятельно. Затем сравните код и объясните различия. Все файлы эталона и тесты открыты.
Скачать рабочий эталонВаш маршрут
Загружаем отметки… Открытие главы не завершает этап.
- 01Открыть этап →
От первой программы к проверяемой функции
Подготовьте локальный проект и напишите функцию обработки текста с тестами.
- 02Открыть этап →
HTTP: принять задание и показать результат
Добавьте API создания и чтения заданий с ясными ответами для клиента.
- 03Открыть этап →
Фоновые задания: очередь, обработчики и остановка
Ограничьте параллельную работу и завершайте сервис без забытых горутин.
- 04Открыть этап →
Перезапуск: что осталось на диске
Сохраняйте состояния заданий и восстанавливайте незавершённую работу после перезапуска.
- 05Открыть этап →
Два разных повтора: запрос клиента и попытка обработки
Разделите идемпотентность приёма и ограниченный повтор временной ошибки.
- 06Открыть этап →
Состояние сервиса: готовность, числа и события
Добавьте проверку готовности и метрики, по которым можно исследовать очередь и обработку.
- 07Открыть этап →
Нагрузка и сбои: измерить, объяснить, повторить
Проведите локальные эксперименты с перегрузкой, восстановлением и остановкой сервиса.
- 08Открыть этап →
Защита: объяснить решение и выдержать новое требование
Защитите устройство сервиса и самостоятельно измените его под конкурирующих клиентов.
Сохраните результат
В главах отмечайте выполненные критерии и записывайте, как проверили работу. Отметки хранятся только в этом браузере. Экспортируйте их перед очисткой данных или переходом на другой компьютер. Это ваша самопроверка, без независимой аттестации.
Путь завершён, когда вы проверили сервис, описали его ограничения и самостоятельно добавили изменение из последнего этапа. После этого переходите к проектированию систем и инженерным проектам.