Golang-дайджест № 5 (1 – 31 мая  2021)

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

Свежая подборка новостей и материалов.

Интересное в этом выпуске

  • Выпущены версии 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 Tim‪e‬

Сообщества

Вопросы по языку на русскоязычном StackOverflow

Информация о митапах

Форум в группах Google

https://t.me/vseins_tech

Источник: https://habr.com/ru/post/560490/


Интересные статьи

Интересные статьи

Грачья Есаевич Овсепян в 1960–1976 годах был главным конструктором семейства ЭВМ «Наири», сыгравшего важную роль в развитии советской вычислительной техники. Сейчас он живет в Лос-Анд...
Как быстро определить, что на отдельно взятый сайт забили, и им никто не занимается? Если в подвале главной страницы в копирайте стоит не текущий год, а старый, то именно в этом году опека над са...
Приступая к животрепещущей теме резервного копирования на «Битрикс», прежде всего хотелось бы поблагодарить разработчиков, реализовавших автоматическое резервное копирование в облачное хранилище в вер...
Всем привет! Уже завтра, 23 мая, стартует наша очередная QIWI Кухня для дизайнеров. Напоминаем, что будет вестись онлайн-трансляция, доступная по этой ссылке. Вас ждут выступления вот э...
Некоторое время назад мне довелось пройти больше десятка собеседований на позицию php-программиста (битрикс). К удивлению, требования в различных организациях отличаются совсем незначительно и...