Go с нуля: выучи golang, напиши Telegram-бота и пройди собес [Stepik] [Леонид Ченский]

Bot

Администратор
Команда форума
23 Янв 2020
207,168
3,145
113
269049.jpg

Вводный
Приветствие от Лео
Правила курса
Общий чат курса
Введение в Go. Часть 1
Осознанное знакомство с Go
Основы синтаксиса
Работа с массивами и срезами
Работа со строками
Работа с картами (map): создание, доступ, операции
Указатели, структуры, методы
Задание 1

Введение в Go. Часть 2
Интерфейсы
Обработка ошибок в Go
Управление пакетами и модулями
NEW! Дженерики
NEW! Итераторы
Задание 2

Параллельное программирование
Введение в параллельное программирование. Модель PMG.
Горутины
Синхронизация данных
Concurrency в Go: каналы и паттерны
Контекст (Context)
Задание 3

Работа с данными
Работа с потоками ввода/вывода
Работа с аргументами командной строки
Работа с файлами
Работа с JSON, YAML
Работа с SQL базами данных
Задание 4

Веб-разработка на Go
Основы HTTP и запуск сервера в Go
Роутинг и middleware
Работа с запросами и ответами
Шаблоны и статические файлы
HTTP-клиент в Go
Популярные фреймворки для HTTP
Задание 5

Тестирование и отладка
Тестирование в Go
Мокирование и тестирование API
Бенчмарки
Профилирование
Задание 6

Основы микросервисов в Go
Введение в микросервисы
JSON-RPC
gRPC + protobuf
Задание 7

Вопросы безопасности
TLS, Сертификаты, Цепочки сертификатов
Безопасность в HTTP (HTTPS)
Безопасность в gRPC
Аутентификация и авторизация (JWT)
Аутентификация и авторизация (OAuth 2.0)
Задание 8

Продвинутая разработка в Go
Рефлексия
Внедрение зависимостей (DI)
Управление конфигурациями и средами
Управление памятью и аллокациями
Логгирование
Сборка Docker-контейнера
Задание 9

Послесловие
Слова напутствия от Лео
Обратная связь