123 подписчика
🚀 Go — это не просто язык, это целая экосистема!
Приготовил для вас огромную подборку материалов по Golang — от самых основ до продвинутых инструментов. Сохраняйте, чтобы ничего не потерять 👇
📚 Основы Go
С чего начать?
👉 Язык программирования Go — ключевые особенности, история создания и преимущества, которые сделали Go одним из самых востребованных языков для бэкенда.
👉 Golang — map — всё о встроенной хеш-таблице: создание, операции, внутреннее устройство, производительность и конкурентный доступ. Одна из самых используемых структур в Go.
🧠 Архитектура и стиль кода
Пишем правильно и красиво
👉 Go SOLID — пять фундаментальных принципов ООП в применении к Go. Как использовать интерфейсы, композицию и структуры для создания слабо связанных систем.
👉 Golang ООП — инкапсуляция, наследование через композицию и полиморфизм. Как Go реализует принципы ООП без классов и наследования.
👉 Golang паттерны — проверенные временем решения: Синглтон, Фабрика, Стратегия и другие паттерны проектирования в Go.
⚙ Инструменты разработчика
Всё для продуктивной работы
👉 Golang and Linter — go vet, staticcheck, errcheck, golangci-lint. Как автоматически проверять качество кода, находить баги и поддерживать единый стиль.
👉 Golang and Profiling — профилирование CPU, памяти, блокировок и горутин. Встроенный pprof и go tool pprof для поиска узких мест.
👉 Golang and Test — unit-тесты, табличные тесты, бенчмарки, примеры, моки (testify, gomock) и измерение покрытия кода.
🌐 HTTP и API
Строим веб-сервисы
👉 Golang and HTTP — обзор популярных фреймворков: Gin, Echo, Fiber, Chi. Сравнение, примеры и помощь в выборе под ваш проект.
👉 Golang and Swagger — автоматическая генерация документации API через OpenAPI-спецификацию. Swagger UI для интерактивного тестирования.
👉 Golang and gRPC — высокопроизводительный RPC-фреймворк от Google. Protocol Buffers, HTTP/2, потоковая передача, интерцепторы.
🗄 Базы данных
Всё о хранении данных в Go
👉 Golang and Postgres — драйверы (pq, pgx), CRUD, транзакции, пулы соединений, работа с JSONB и лучшие практики.
👉 Golang and MySQL — установка, подключение, подготовленные запросы, транзакции, работа с NULL и построение REST API.
👉 Golang and SQLite — лёгкая встраиваемая БД без отдельного сервера. Отлично подходит для мобильных, десктопных и CLI-приложений.
👉 Golang and MongoDB — документоориентированная NoSQL-база. Гибкая схема, шардирование, агрегации и работа с BSON.
👉 Golang and ClickHouse — колоночная СУБД для аналитики. Пакетные вставки, работа с массивами, высокая производительность для OLAP-запросов.
📨 Брокеры сообщений
Асинхронное взаимодействие сервисов
👉 Golang and RabbitMQ — обменники, очереди, DLQ, publisher confirms, автоматическое переподключение.
👉 Golang and Kafka — продюсеры, консьюмеры, партиции, Consumer Groups, обработка миллионов событий в секунду.
⚡ Кэширование и производительность
👉 Golang and Redis — in-memory база данных: кэширование, сессии, очереди, Pub/Sub, распределённые блокировки.
🔍 Мониторинг и наблюдаемость
👉 Golang and Prometheus — сбор метрик: счетчики, гистограммы, датчики. Интеграция с Grafana для визуализации.
🐳 DevOps и контейнеризация
👉 Golang and Docker — многоэтапная сборка, Docker Compose, минимизация образов, CI/CD и лучшие практики контейнеризации.
🧪 Тестирование и качество
👉 Golang and Testcontainers — запуск Docker-контейнеров прямо в тестах. Реалистичное интеграционное тестирование с базами данных, брокерами и API.
🎬 Мультимедиа
👉 Golang and Video editor — Go + FFmpeg: конвертация, обрезка, водяные знаки, извлечение кадров, создание GIF и потоковая обработка.
💡 Внутреннее устройство Go
👉 Golang | Garbage collector — как работает сборщик мусора в Go: эволюция алгоритмов, управление памятью, настройка и мониторинг.
#IT #BackEnd #Golang #DevOps #Microservices #Database #Redis #PostgreSQL #MySQL #MongoDB #ClickHouse #Kafka #RabbitMQ #Docker #Prometheus #gRPC #API #Testing #SOLID #Patterns #FFmpeg #VideoProcessing #Profiling #Linter #Swagger #Testcontainers #GarbageCollector
3 минуты
11 августа