Свежая подборка новостей и материалов.
Интересное в этом выпуске
Выпущены версии Go 1.16.4 и 1.15.12
Эмулятор Atari VCS
Эмулятор Game Boy
Фантастическая библиотека 2D-игр
Приятного чтения!
Новости, события
Выпущены версии Go 1.16.4 и 1.15.12 Релизы с небольшими исправлениями ошибок
net/http: ReadRequest
cmd/compile: внутренняя ошибка компилятора: недопустимая маска поворота PPC64
время выполнения: выброс «недопустимая таблица в компьютерной кодировке», вызванный неправильной трассировкой cgo expandFinalInlineFrames
время: обработка часовых поясов Европы/Дублина нарушена из-за встроенной базы данных часовых поясов
archive/zip: повторяющиеся записи в интерфейсе FS
os/signal: тайм-аут в Test All Threads Syscall Signals
Вышла новая версия IDE GoLand 2021.2
Импорт схем protoc-gen-ent
Начиная с Go 1.17 вы можете менять порядок выполнения тестов
Предложения по улучшению языка
proposal: по добавлению пакета slices, с дженерик-функциями для работы со слайсами
proposal: sync: add Mutex.TryLock
Нативный фаззинг почти готов к стадии beta
Материалы для обучения
Уроки для изучения Golang
Введение в программирование на Go
Go в примерах
Маленькая книга о Go
Руководство для начинающих по разумным абстракциям с использованием Golang
Книга, посвященная синтаксису/семантике
Go-patterns (паттерны проектирования с примерами на Golang)
Статьи
Про nil-интерфейсы
В Uber решили допилить pprof чутка. Давайте посмотрим, что у них получилось
Если вы не знаете бридж-паттерн, то вы скорее всего не знаете, что вы его знаете
Использование Viper с Consul для настройки приложений Go
Разбираемся с пакетом time
Бенчмаркинг с Go
Создание серверной части игры в бинго с помощью Encore – Encore, как и было обещано, дает много волшебства, когда дело доходит до разработки и быстрого развертывания сервиса
Примечание о рабочих пулах в Go – если вы используете горутины для обработки запросов, вы, вероятно, достигнете ограничений памяти в масштабе, поэтому пулы рабочих на помощь. Однако в этих водах тоже есть акулы
Как моделировать данные JSON в Go с помощью CockroachDB
Пять лучших уроков, которые я усвоил, работая с Go в течение двух лет
Создание простого эмулятора терминала в 100 строках Go
Мысли о том, как структурировать код Go – многие языки имеют соглашения о том, как структурировать файлы и каталоги для приложения, но Go оставляет это на ваше усмотрение. В основном это хорошо, правда?
pprof ++: Go Profiler с мониторингом производительности оборудования
Памятка по модулям Go – если вам необходимо постоянно искать, что нужно для работы с зависимостями, на этой странице собраны все основы
REST-серверы в Go: аутентификация
Как выполнять перечисления – Go изначально не имеет enum типа, который вы могли бы видеть в некоторых языках, но iota может значительно помочь
История создания бессерверного приложения CRUD с помощью AWS Lambda и Go
Функциональное программирование в Go с помощью универсальных шаблонов
Подход к обработке ошибок в HTTP-приложениях Go
Вероятно, вам не нужен такой параллелизм в Go
10 лучших пакетов, которые можно использовать с проектом GoLang
Каналы Go – за кулисами
Protobuf and Go: обработка больших наборов данных
Почему выгодно писать микросервисы с помощью Golang?
Обзор управления памятью в Go
Go Quiz: проверьте свои знания языка программирования
Актуальный обзор gRPC с GoLang
Go темные углы
HTTP-вход в Go
5 полезных модулей Golang, которые следует знать разработчикам в 2021 году
Настройка бэкэнда Go для Xterm.js, чтобы получить shell через браузер
Краткое руководство по ассемблеру Go: константы и символы
Разработка REST-серверов на Go. Часть 1: стандартная библиотека
Prototype Design Pattern в Golang
Архитектура кода программного обеспечения: декорируем стратегией. Рассказ в 10 эпизодах, основанный на реальных событиях
Настройка распределенной трассировки в Kubernetes с OpenTracing, Jaeger и Ingress-NGINX
Go: Управление обработкой множественных ошибок
Перенос Sypex Geo API из PHP на Go
Самописный антиспам-сервис Gotoh, или как мы боролись за белизну IP-адресов
Go: справляемся с конфликтами при блокировках с помощью пакета Atomic
Запускаем Golang на Jupyter Notebook
Factory Method Pattern
Turbolift – инструмент для масштабного рефакторинга
Инструменты
Web-компоненты на Go gomponents
Простенькое решение для фича флагов go-feature-flag
Виртуальные машины Linux с автоматическим общим доступом к файлам, переадресацией портов и контейнером lima
Инструмент для безопасного разделения и распространения ваших закрытых ключей cocert
Создание конвейеров сборки в Go – на этот пакет сильно повлиял пакет тестирования, что становится очевидным при запуске конвейера goyek
Простая структура RPC с определениями служб Protobuf twirp 8.0
Инструмент для генерации безопасных типов из SQL sqlc 1.8
Фантастическая библиотека 2D-игр Ebiten 2.1.0
Веб-фреймворк, вдохновленный Express.js. Так что, если вам нравится это в мире узлов, проверьте это Fiber 2.9.0
Реализации фильтров Блума Bloom 3.0
Высокопроизводительный минималистичный веб-фреймворк Echo 4.3
Усовершенствованный HTTP-клиент Heimdall 7.0
Основанная на графах база данных, написанная на Go EliasDB
Выполнение JavaScript из Go v8go 0.6.0
Терминальный клиент для Mangadesk
Middleware http для безопасности Secure
Простое и полное решение для флагов функций go-feature-flag
Управление доступом на основе ролей (RBAC) с сохранением базы данных Authority 2.0
Client для New Notion API go-notion
Эмулятор Atari VCS – относительно полнофункциональный эмулятор, который включает поддержку контроллера и запись игрового процесса Gopher2600
Эмулятор Game Boy Advance, написанный на Go – не для того, чтобы играть в фаворитов с классическими игровыми устройствами. Как насчет эмулятора для GBA от Nintendo Magia
Библиотека MySQL go-mysql 1.2.0
Менеджер email-рассылки listmonk
Экспериментальный инструмент рефакторинга Rf
GitHub Actions для сохранения старых зависимостей go-mod-archiver
Анализатор использования диска с консольным интерфейсом gdu 5.0
Быстрый, гибкий Linter for Go Revive
Библиотека изменения размера изображения с учетом содержимого Caire 1.3
Простая проверка типа JSON go-map-schema
Пакет вывода цветного текста в консоли color 1.12.0
Визуализация ответов в формате JSON, XML, двоичных данных и HTML-шаблонов Render 1.4.0
Официальный клиент Go для Elasticsearch go-elasticsearch 7.13.0
База данных SQL на чистом Go go-sqldb
io.Readerа io.Writer с ограничениями LimitIO
Видео
Плейлист с GopherCon Russia 2021
5-минутное видео, показывающее, насколько легко запускать и отлаживать тесты с помощью Delve
Подкасты
GenericTalks
Go Time
Сообщества
Вопросы по языку на русскоязычном StackOverflow
Информация о митапах
Форум в группах Google
https://t.me/vseins_tech