🐹 Go для Node.js разработчиков

Полный курс из 43 уроков — от синтаксиса до production-микросервисов

Для разработчиков с опытом 7+ лет на Node.js/TypeScript

🔰 Фаза 1: Фундамент Go (уроки 1–7)

  1. 1 Установка Go, инструменты и первая программа Go Node.js core
  2. 2 Типы данных, коллекции и управление памятью Go core
  3. 3 Функции, методы и интерфейсы Go core
  4. 4 Указатели и управление памятью (глубокое погружение) Go core
  5. 5 Обработка ошибок — продвинутые паттерны Go core
  6. 6 Пакеты, модули и внутренняя организация проекта Go core
  7. 7 Стандартная библиотека: io, os, filepath, bufio Go core

⚡ Фаза 2: Конкурентность и синхронизация (уроки 8–10)

  1. 8 Конкурентность: горутины и каналы Go production
  2. 9 Контекст: отмена, дедлайны, значения Go production
  3. 10 Синхронизация: мьютексы, WaitGroup, atomic, errgroup Go production

🌐 Фаза 3: Сетевые сервисы (уроки 11–18)

  1. 11 HTTP-сервер на стандартной библиотеке Go REST
  2. 12 Middleware, CORS, rate limiting, валидация Go production
  3. 13 PostgreSQL с pgx: подключение, пул, CRUD Go SQL
  4. 14 Миграции, транзакции и продвинутые SQL-паттерны Go production
  5. 15 MongoDB: CRUD, индексы, агрегации Go NoSQL
  6. 16 Redis: кэширование, Pub/Sub, распределённые блокировки Go Cache
  7. 17 gRPC и Protocol Buffers — основы Go RPC
  8. 18 gRPC: стриминг, интерцепторы, дедлайны, retry Go production

🏗️ Фаза 4: Архитектура и DI (уроки 19–22)

  1. 19 Чистая архитектура: handler → service → repository Go production
  2. 20 Внедрение зависимостей и конфигурация (env, yaml) Go production
  3. 21 Тестирование: модульные тесты, testify, gomock Go testing
  4. 22 Интеграционные тесты с testcontainers Go testing

🔍 Фаза 5: Observability (уроки 23–27)

  1. 23 Бенчмаркинг и профилирование (pprof) Go perf
  2. 24 Логирование: zerolog, контекстное, sampling Go logs
  3. 25 Метрики Prometheus и Grafana Go metrics
  4. 26 Трассировка с OpenTelemetry Go traces
  5. 27 Graceful shutdown (полный production-сценарий) Go production

🔗 Фаза 6: Микросервисные паттерны (уроки 28–31)

  1. 28 Kafka: producer и consumer в Go Go Kafka
  2. 29 Kafka: DLQ, ретраи, consumer groups, ребалансировка Go production
  3. 30 Паттерны отказоустойчивости: retry, circuit breaker, rate limiter Go production
  4. 31 Идемпотентность, дедупликация и идемпотентные ключи Go production

🚀 Фаза 7: Production-ready инфраструктура (уроки 32–36)

  1. 32 Docker: multi-stage, distroless, docker-compose Go DevOps
  2. 33 Kubernetes: deployment, probes, HPA, ConfigMaps Go K8s
  3. 34 CI/CD с GitHub Actions: тесты, линтер, деплой Go CI/CD
  4. 35 Безопасность: JWT, хеширование, CORS, rate limiter Go Security
  5. 36 Валидация данных: go-playground/validator, кастомные правила Go validation

🏁 Фаза 8: Продвинутые темы и финальный проект (уроки 37–40)

  1. 37 WebSocket в Go: gorilla/websocket и nhooyr.io/websocket Go WS
  2. 38 Генерация кода: sqlc, Wire, oapi-codegen Go codegen
  3. 39 Монолит vs микросервисы: практический разбор на Go Go architecture
  4. 40 Финальный проект: микросервисная система из 4 сервисов Go project

🎁 Бонусная фаза: Дополнительные уроки (уроки 41–43)

  1. 41 Пакет fmt — форматирование, методы и лучшие практики Go core
  2. 42 go-chi — роутер и middleware для production Go REST
  3. 43 Production-ready REST API для заметок на go-chi Go production