- Длительность2 мес.
- ДокументСертификат
Программа обучения
17 разделов программы по данным школы.
1Введение
- API на Golang
- Как устроен курс
- Обзор проекта
- Проекты домашних заданий
- Обзор курсов
- Работа на платформе
- AI и тренажёры
- Практика на проекте
- Рекомендуемый курс
2Настройка окружения
- Настройка окружения
- Установка Golang
- Настройки VSCode
- Рекомендуемый курс
- Домашнее задание AI
- Работа с gitflow
3Работа Go под капотом
- Что внутри программы Go
- Модель памяти
- Stack frames
- Heap
- Pointer на heap
- Go allocator
- Пример с Reader
- Работа GC
- Тест — Работа Go под капотом
- Занятие — Работа Go под капотом
4Concurrency
- Что такое Goroutine
- Запуск Goroutine
- Упражнение — Ускорение работы
- WaitGroup
- Планировщик
- Цикл планировщика
- Channels
- Создание канала
- Чтение данных
- Закрытие канала
- Упражнение — Сумма slice
- Обработка ошибок
- Select
- Тест — Concurrency
- Тренажёр — Concurrency
- Занятие — Concurrency
- Домашнее задание — Concurrency
5Http server
- Выбор HTTP сервера
- Простейший сервер
- Как работают запросы
- Свой ServeMux
- Методы и коды ответа
- Handler
- Тест — Http server
- Тренажёр — Http server
- Занятие — Http server
- Домашнее задание — Http server
6Архитектура
- Структура приложения
- Конфигурация
- Обзор приложения
- Декомпозиция модуля
- Упражнение — Модуль авторизации
- Передача зависимостей
- Ответ от API
- Упражнение — Пакет ответа
- Тест — Архитектура
- Занятие — Архитектура
- Домашнее задание — Архитектура
7Запрос и валидация
- Чтение body
- Упражнение — Простая валидация
- Regexp
- Go validator
- Вынос обработчика
- Упражнение — Регистрация
- Тест — Запрос и валидация
- Занятие — Запрос и валидация
- Домашнее задание — Запрос и валидация
8Подключение базы данных
- Установка Docker Desktop
- Развёртывание Postgres
- Подключение к базе
- Выбор ORM
- Подключение Gorm
- Описание модели
- Авто миграции
- Тест — Подключение базы данных
- Занятие — Подключение базы данных
- Домашнее задание — Подключение базы данных
9CRUD
- Упражнение — Handler ссылок
- Параметр запроса
- Паттерн репозитория
- Создание ссылки
- Получение ссылки
- Упражнение — Проверка на hash
- Изменение ссылки
- Удаление ссылки
- Упражнение — Проверка наличия
- Тест — CRUD
- Тренажёр — CRUD
- Занятие — CRUD
- Домашнее задание — CRUD
10Middleware
- Что такое Middleware
- Первый обработчик
- WrapperWriter
- CORS
- Stack middleware
- Упражнение — Получение Bearer
- Middleware для роутов
- Тест — Middleware
- Тренажёр — Middleware
- Занятие — Middleware
- Домашнее задание — Middleware
- Отзыв о курсе
11Авторизация
- Что такое JWT
- Упражнение — Модель пользователя
- Упражнение — Репозиторий пользователей
- Сервис авторизации
- Bcrypt
- Упражнение — Логин пользователя
- Создание JWT
- Упражнение — Финал авторизации
- Тест — Авторизация
- Тренажёр — Авторизация
- Занятие — Авторизация
- Домашнее задание — Авторизация
12Контекст
- Что такое контекст
- WithTimeout
- WithValue
- WithCancel
- Получение email из JWT
- Запись в контекст
- Упражнение — Чтение из контекста
- Unauthed
- Тест — Контекст
- Тренажёр — Контекст
- Занятие — Контекст
- Домашнее задание — Контекст
13Продвинутая работа с БД
- Формирование запроса
- Limit и offset
- Count
- Query параметры
- Упражнение — Список ссылок
- Один ко многим
- Добавление клика
- Упражнение — Простое добавление
- Правильный DI
- Eventbus
- Отправка события
- Получение события
- Упражнение — Финал Eventbus
- Упражнение — Handler статистики
- Group By
- Group By в Gorm
- Gorm Session
- Тест — Продвинута работа с БД
- Занятие — Продвинутая работа с БД
- Домашнее задание — Продвинутая работа с БД
14Тестирование API
- Виды тестирования
- Изменение приложения
- E2e тест
- Упражнение — Отрицательный тест
- Подготовка тестового окружения
- Предварительные данные
- Очистка данных
- Unit тесты
- Mock данных
- Mock базы
- Httptest
- Mock запросов
- Упражнение — Тест регистрации
- Отладка тестов
- Финал проекта
- Тест — Тестирование API
- Тренажёр — Тестирование API
- Задание — Тестирование API
- Домашнее задание — Тестирование API
15Заключение
- Куда дальше
- Собеседование с AI наставником
- Финальное тестирование
- Рекомендуемый курс
- Практика собеседования с AI
16Бонус — Проектирование backend API
- О дополнении
- Проектирование API
- Упражнение — Пример проектирования
- Доменные области
- Упражнение — Доменные области
- API vs GraphQL
- Микросервисы или монолит
- Базы данных
17Стажировка
- Основы Scrum
- Старт задачи
- Выполнение задачи
- Код ревью
- Старт работы
Разбор Обучакина
Перед выбором сравните программу и условия договора. Это вопросы для проверки, а не обещания результата.
Что оценить
- Соответствие программы вашим задачам
- Формат практики и обратной связи
- Требования к поступающим
Что уточнить
- Актуальную стоимость и условия оплаты
- Доступ к материалам и поддержку
- Порядок возврата и выдачи документов
Документ после обучения
Сертификат
Частые вопросы
Какой документ выдаётся?
Сертификат


