Go дайджест #8: новые фишки Go playground, что нас ждет в Go 1.13, принадлежит ли язык его сообществу по-настоящему?

В выпуске: сборка мусора в Go, реверс-инжиниринг Go бинарников, как писать читабельный код, видео конференции dotGo 2019.

Новости

Опубликован результат опроса Go разработчиков за 2018-й год.

Go playground теперь поддерживает несколько файлов и импорт сторонних библиотек. Твит Брэда Фицпатрика об этом. Как это все работает можно посмотреть тут.

И еще один твит Брэда о том, что нас ожидает в Go 1.13

Google запустили инфраструктуру для Go modules.

Также незамеченной не может остаться статья с мнением о том, что Go не принадлежит комьюнити на самом деле, а все решает большой брат (Google). Статья вызвала бурное обсуждение на Hacker News.

Читаем

Go naming tips — пост Питера Боргона с размышлениями о правильном нейминге в Go.

Garbage Collection In Go : Part I — Semantics — про сборку мусора в Go (часть 1).

Garbage Collection In Go : Part II — GC Traces — про сборку мусора в Go (часть 2).

GopenPGP, an open source encryption library for native applications — OpenPGP на Go от ребят из ProtonMail.

Reversing Golang Binaries: Part-1 — реверс-инжиниринг Go бинарников (часть 1).

Reversing Golang Binaries: Part-2 — реверс-инжиниринг Go бинарников (часть 2).

Why are my Go executable files so large? — сколько весят бинари и почему?

Design and Implementation of Golang Failpoints — PingCAP об их новой библиотеке Failpoint.

Using PostgreSQL JSONB with Go — о том, как работать с JSONB в Postgres.

Prefer table driven tests — Дэйв Чейни о table-driven тестах.

Go Dependency Injection with Wire — разбираемся с Wire, инструментом для DI.

Dependency injection in Golang using higher order functions — и еще немного о DI.

Go memory ballast: How I learned to stop worrying and love the heap — как ребята из твича тюнили сборщик мусора.

Clear is better than clever — Дэйв Чейни о там, как писать читабельный код.

Go is on a Trajectory to Become the Next Enterprise Programming Language — станет ли Go следующим энтерпрайз языком.

Understanding real-world concurrency bugs in Go — немного о том, что канкаренси в Go — не такое уж и простое дело.

Istio Observability with Go, gRPC, and Protocol Buffers-based Microservices — про Истио, gRPC и микросервисы.

How I investigated memory leaks in Go using pprof on a large codebase — как найти течь в большом приложении.

Idiomatic Go Resources — список идеоматических ресурсов от Дэмиана Гриски.

The State of Caching in Go — немного про инмем кеши в Go.

Смотрим

В марте в Париже отгремела конференция dotGo 2019. Весь плейлист уже доступен на YouTube.

Лично я выделил для себя:

Dave Cheney — Constant Time
Marcel van Lohuizen — Go 2 error values today
Ignat Korchagin — Go as a scripting language in Linux

Ну и помимо dotGo можно посмотреть:

Go core team на Cloud Next ’19.

Daniel Martí — Reimagining gofmt for Go 2.0

Performance Tuning Go Applications on GCP (Cloud Next ’19)

Brian Kernighan interviews Ken Thompson

Щупаем

gqlgen — генератор GrephQL серверов.

gizmo — микросервисный тулкит от The New York Times.

panicparse — парсилка паник в красивый формат.

kcp-go — библиотека для работы с UDP.

uiprogress — консольные прогрессбары.

go-mod-outdated — находим устаревшие модули в go.mod.

miniredis — мокаем Redis.

go-elasticsearch — официальный Go SDK для Elasticsearch.

chromedp — управляем хромом из Go кода.

tracerr — выводим ошибки с трейсами и кусочками вызвавшего кода.


Также я веду канал в Telegram об интересном в Golang. Подписывайтесь!


← Предыдущий выпуск: Go дайджест #7.
Следующий выпуск: Go дайджест #9

👍ПодобаєтьсяСподобалось0
До обраногоВ обраному0
LinkedIn

Схожі статті

  • Визначаємо вартість декоратора в GolangВизначаємо вартість декоратора в Golang

    Привіт, мене звати Ярослав, займаюсь розробкою сервісу для збереження активів у криптовалюті в компанії ITAdviser, розробляємо на Go. У цій статті розглянемо декоратор, його вартість і чи варто використовувати його в розробці нових сервісів. 57

  • Приклад gRPC-мікросервісу на GoПриклад gRPC-мікросервісу на Go

    Фреймворк gRPC можна розглядати як хорошу заміну REST під час взаємодії між мікросервісами. Ярослав Характерник, Golang Developer, демонструє розробку мікросервісу для збереження статистики. 39

  • Синхронізація в Go: горутини, тести, варіантиСинхронізація в Go: горутини, тести, варіанти

    Ця стаття про синхронізацію результатів від паралельно виконаних підзадач, призначена для спеціалістів-початківців та тих, хто планує перейти на Go. Ярослав Характерник, Go-девелопер, розповідає про вартість горутини та варіанти перевірки її на швидкодію. 10




7 коментарів

Підписатись на коментаріВідписатись від коментарів Коментарі можуть залишати тільки користувачі з підтвердженими акаунтами.

Отличный обзор, большое спасибо !

Як завжди класний матеріал і багато цікавого

Спасибо за дайджест.

Кто-то объяснит мне, зачем в язык, который был призван быть простым и читаемым, тащат DI-либы?

Кроме того, как управлять моканьем в этом случае? Тащить эти либы в тесты?

Привет. Хороший вопрос.
1) Официально никакие DI либы в стандартную библиотеку не тащат и это хорошо. Wire делается гуглом, и наверное там и применчется, но его широкого распостранения я пока не встречал.
2) Использовать или нет — выбор только за вами :)

Дякую за роботу!

Підписатись на коментарі