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

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.
автор изображения gopher  - @vaneltia, dribbble.com
автор изображения gopher - @vaneltia, dribbble.com

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

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

  • Выпущены версии 1.18.2 и 1.17.10

  • Результаты опроса разработчиков в Go GUI 

  • TinyGo v0.23.0: теперь с поддержкой Go 1.18 

  • Go является любимым и быстрорастущим языком на GitHub

  • Заметки о практическом параллелизме в Go 

Приятного чтения!

Новости, события

  • Выпущены версии 1.18.2 и 1.17.10 - эти второстепенные выпуски включают одно исправление безопасности.

    • syscall: при вызове с ненулевым параметром flags функция syscall.Faccessat могла неправильно сообщить, что файл доступен.

  • Go является любимым и быстрорастущим языком на GitHub

  • Результаты опроса разработчиков в Go GUI 

  • TinyGo v0.23.0: теперь с поддержкой Go 1.18 

  • Robert Griesemer экспериментировал с давним предложением о внедрении коротких литералов функций в Go

    func x, y, z { ... } // func style
    (x, y, z) => { ... } // arrow style

Awesome

  • https://awesome-go.com/ 

  • https://github.com/guardrailsio/awesome-golang-security 

  • https://github.com/Binject/awesome-go-security 

  • https://gist.github.com/hbt/d6ab942b882d5b94f331c5257076d05e 

  • https://github.com/avelino/awesome-go 

Материалы для обучения

  • Уроки для изучения Golang

  • Ссылки на учебные пособия по Go

  • The Darker Corners of Go — список уроков

Статьи

  • Дизайнерские решения, лежащие в основе языка Go 

  • Отчет об опыте после 6 месяцев использования Go 

  • Нежное введение в дженерики в Go

  • Разрушение монолита в Twitch

  • Ложь, которую мы говорим себе, чтобы продолжать использовать Go

  • Создание бессерверной серверной части для Slack на AWS Lambda 

  • Изменение одного символа резко улучшило производительность приложения

  • Как использовать go run для управления зависимостями инструментов

  • О неправильном использовании интерфейса Ducks и Go

  • Testscript, определение тестов на основе файловой системы путем создания сценариев

  • Заметки о практическом параллелизме в Go 

  • Вычисление наборов типов сложнее, чем вы думаете 

  • Давайте создадим распределенный Postgres Proof of Concept 

  • Краткий обзор практического применения Generics в Go 

  • Создание управляемых событиями распределенных систем с помощью gRPC, NATS JetStream и CockroachDB

  • Команда переписала сервис на Go из Node.js и получила прирост производительности в 5 раз и уменьшение объема оперативной памяти на 40 %

  • Шаблон функциональных параметров медленный

  • Go Nulls и SQL - работа с нулевыми значениями, может привести к ошибкам

  • ArcticDB встраиваемая база данных столбцов

  • Экспортируем модули из Go-сервиса: сотворение директории pkg

  • Создание секретного туннеля с помощью Go

  • Go против Rust — производительность вне конкуренции

  • Пишем консольную утилиту на Go для добычи гифок с котами

  • Разработка навыка для «Алисы» на основе Google Keep заметок

  • Go в API для мобильного приложения. Создаем совместный список покупок с мгновенными уведомлениями

  • Потоковая обработка данных в go

  • R*-tree в Go, немного геймдева и поиска элементов в пространстве

  • Четыре простых лайфхака при написании тестов на Go + testify

  • Go в браузер. Создание веб-приложений с использованием Web Assembly на Go

  • GOAPPLE: быстрая настройка I3-wm

  • Спроси меня про Go. Отвечаем на распространённые вопросы

  • Signum Explorer Telegram Bot — разработка open-source pet-project телеграм бота для блокчейна Signum

Инструменты

  • Bud v0.1.4 — новый полнофункциональный веб-фреймворк

  • Cover Treemap — создание древовидных карт для профилей Go Cover 

  • Generic v1.0 — набор общих структур данных

    • avl: дерево AVL.

    • btree: B-дерево.

    • cache: оболочка map[K]V, которая использует максимальный размер и удаляет элементы, используя LRU, когда они заполнены.

    • hashmap: хэш-карта с линейным зондированием.

    • hashset: хэш-набор, который использует хэш-карту в качестве базового хранилища.

    • mapset: набор, который использует встроенную карту Go в качестве базового хранилища.

    • multimap: ассоциативный контейнер, допускающий несколько записей с одним и тем же ключом.

    • interval: дерево интервалов, реализованное как расширенное дерево AVL.

    • list: двусвязный список.

    • stack: стек LIFO.

    • trie: тернарный поиск.

    • queue: очередь «первым пришел — первым обслужен» (FIFO).

    • heap: бинарная куча.

  • Go-mysql 1.5 — библиотека для сетевого протокола MySQL 

  • Cast v1.5 — инструмент для безопасного преобразование из одного типа в другой 

  • RoseDB v1.0 — высокопроизводительная база данных NoSQL на основе Bitcask, поддерживающая различные структуры данных, такие как string, list, hash, set и sorted set.

  • FerretDB v0.3 — альтернатива MongoDB

  • Rqlite v7.5.0 — распределенная реляционная база данных, построенная на SQLite 

  • SH v3.5 — Парсер shell, средство форматирования и интерпретатор. Поддерживает POSIX Shell , Bash и mksh

  • Weron v0.2.1 — инструмент для создания простых, быстрых и безопасных оверлейных сетей на основе WebRTC

  • Roaring v1.1 — cтруктуры данных растровых изображений

  • Sneller — это высокопроизводительный векторизованный механизм SQL для JSON, который работает непосредственно в объектном хранилище, оптимизирован для обработки больших JSON размером в ТБ

  • Cardrank — библиотека типов, функций и утилит для работы с игральными картами, колодами карт и оценки рангов покерных комбинаций

  • Typioca v1.2.3 — Минимальный тестер скорости печати на базе терминала.

  • concurrent map v2.0 — многопоточная параллельная карта

  • God — инструмент для развертывания и управления сервисами Go с помощью systemd 

  • Sonic v1.3 — быстрая библиотека JSON

  • Kratos v2.3 — платформа для микросервисов на основе gRPC

  • immudb v1.3 — неизменяемая база данных на основе нулевого доверия, SQL и Key-Value

  • Plow v1.2 — инструмент для тестирования HTTP

  • Traefik v2.7.0 — обратный прокси и балансировщик нагрузки

  • Oak v4.0 — игровой 2D-движок

  • Fiber v2.34.0 — веб-фреймворк на основе Express.js

  • WAL v2.0 — архивация и восстановление Postgres

Видео

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


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

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

Свежая подборка новостей и материаловИнтересное в этом выпускеВыпущены версии 1.18.1 и 1.17.9, результаты опроса разработчиков Go 2021, вопросы и ответы для собеседования Go-разработчика, сетевой сниф...
Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него.
Получить трафик для интернет-магазина сегодня не проблема. Есть много каналов его привлечения: органическая выдача, контекстная реклама, контент-маркетинг, RTB-сети и т. д. Вопрос в том, как вы распор...
Несмотря на то, что “в коробке” с Битриксом уже идут модули как для SOAP (модуль “Веб сервисы” в редакции “Бизнес” и старше), так и для REST (модуль “Rest API” во всех редакциях, начиная с...
Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него.