Чему вы научитесь
- Проектировать REST API на Go с фреймворком Gin: маршруты, группы маршрутов, обработка JSON-запросов и ответов
- Выстраивать слоистую архитектуру handler → service → repository и понимать, за что отвечает каждый слой
- Работать с базой данных SQLite напрямую через database/sql: создавать таблицы, писать SQL-запросы, настраивать пул соединений и индексы
- Реализовывать полноценный CRUD: создание, чтение, обновление и мягкое удаление (soft delete) записей
- Валидировать входные данные декларативно через go-playground/validator и отдавать понятные сообщения об ошибках
- Строить аутентификацию с нуля: регистрация, безопасное хранение паролей с bcrypt, логин и выдача JWT-токенов
- Защищать эндпоинты с помощью middleware: проверять токен, прокидывать данные пользователя через контекст запроса
- Разграничивать доступ по владельцу ресурса и корректно возвращать статусы 401 Unauthorized и 403 Forbidden
- Управлять конфигурацией и секретами через переменные окружения и .env-файлы.
- Применять на практике UUID, контрольные временные метки (created_at / updated_at / deleted_at) и проверки уникальности данных
О курсе
Цель курса — показать, как из набора отдельных файлов вырастает работающий, защищённый веб-сервис на Go. Мы не разбираем абстрактные примеры «для галочки», а строим один реальный проект от первого эндпоинта /hello до API с регистрацией пользователей, JWT-аутентификацией и проверкой прав доступа.
Почему стоит выбрать именно этот курс:
- Это формат скринкастов, где каждый шаг я показываю вживую — вы видите не только готовый код, но и ход мысли: почему выбрано именно такое решение, какие ошибки возникают и как их чинить
- Проект развивается инкрементально, небольшими логичными шагами. Каждый этап — это законченная функциональность, которую можно запустить и проверить
- Вы получаете не учебную «игрушку», а каркас, который повторяет структуру настоящих коммерческих сервисов: разделение ответственности, валидация, безопасность
Что вы приобретёте после освоения: уверенное понимание того, как устроен бэкенд на Go, и собственный проект, который можно показать в портфолио или взять за основу для своих сервисов.
Особенности курса: упор на практику и «живую» разработку, акцент на архитектуре и безопасности, разбор типичных проблем (хранение паролей, секреты, права доступа), а также личное код-ревью вашей работы
Что нужно будет делать: смотреть скринкасты, повторять шаги в своём редакторе, собирать сервис своими руками и в конце сдать работу на проверку, чтобы получить разбор кода лично от автора
Для кого этот курс
Начальные требования
Чтобы курс не оказался слишком сложным, желательно перед стартом:
- Знать основы программирования — переменные, функции, структуры, условия и циклы, работа с типами
- Понимать базовые концепции Go (синтаксис, пакеты, структуры, методы, обработка ошибок) или иметь опыт другого языка (Java, C#, Python и т.п.) и готовность быстро освоить синтаксис Go по ходу
- Иметь общее представление о том, как работает HTTP — запросы, ответы, методы (GET/POST/PUT/DELETE), статус-коды
- Базово ориентироваться в работе с базами данных и понимать простые SQL-запросы (плюс, но не обязательно).
- Уметь работать в терминале: запускать команды, устанавливать зависимости.
Глубокого знания Go, опыта с Gin, JWT или SQLite не требуется — всё необходимое разбирается в процессе
Наши преподаватели
Как проходит обучение
Обучение построено в формате видео-скринкастов: я пошагово показываю на экране, как строится сервис — от создания файла до запуска готового эндпоинта. Вы видите весь процесс разработки в реальном времени, вместе с объяснением каждого решения.
В процессе обучения вы:
- Смотрите скринкасты и параллельно повторяете шаги в своём проекте
- Собираете сервис своими руками, постепенно наращивая функциональность от урока к уроку
- Сдаёте итоговую работу на проверку — я провожу персональное код-ревью вашего проекта, указываю на сильные места и точки роста, объясняю, что и почему стоит улучшить
Такой формат позволяет не просто «посмотреть, как делает другой», а получить обратную связь именно по вашему коду
Программа курса
Что вы получаете
- – Практический навык построения веб-сервисов на Go, востребованный в бэкенд-разработке
- – Понимание архитектуры реальных сервисов: разделение на слои, валидация, безопасность, права доступа
- – Готовый проект для портфолио — защищённый REST API с JWT-аутентификацией, который можно показать на собеседовании или развить дальше
- – Персональное код-ревью вашей работы от автора курса с конкретной обратной связью
- – Уверенность в стеке Gin, SQLite, JWT, bcrypt, validator — инструментах, которые применяются в продакшене
- – Базу для роста: понятный каркас, который легко расширить новыми сущностями, эндпоинтами и интеграциями