Go дайджест #1: Go 1.10rc2, dep dependency management, SOLID в Go

У випуску: гайд по написанню Dockerfiles для Go, туторіал по організації пакетів, introduction to testing in Go, high performance Go.

Новини

Go 1.8.7, 1.9.4, and 1.10rc2 Released Due to Security Issue

Go Project Now Accepts Pull Requests via GitHub — тепер контрибьютить в Go можна і з допомогою пул реквестов в GitHub.

Announcing dep v0.4.1, Now With Documentation — тепер у dep єофіційний сайт іонлайн-документація .

Почитати

Fix в Go 1.9 прискорив GitLab RPC Service в 30 разів

Гайд по публікації бібліотек — управління залежностями, документація, тести, CI і ліцензування.

Зовсім недавно NGINXдодали підтримку HTTP2 Server Push. Туторіал про те, як використовувати це з Go.

Гайд по написанню Dockerfiles для Go — покрокове створення Dockerfile з live reloading і управлінням залежностями.

Туторіал по створенню і управлінню macOS LaunchAgents — launchd, використання text/template для створення plist файлів, обробка сигналів, різниця між «агентами» і «демонами».

В Go 1.8 доданий інструмент для тестування бета-версій і реліз-кандидатів. Туторіал про те, як його використовувати.

Using 'dep' For Day-To-Day Dependency Management — детальний розбір команд "dep ensure" і "dep status".

An Intro to dep: How to Manage Your Go Project Dependencies — туторіал по управлінню залежностями в Go проектах.

Packing Multiple Binaries in a Go Package — туторіал по організації пакетів, для новачків.

Туторіал по розробці JSON API

Створення «URL Shortener» API за допомогою Goa Framework

Clean Architecture on Golang — один з підходів до архітектури вашого додатка.

Принцип SOLID в мові Go — переклад статті від Dave Chaney«Solid Go Design» .

Туторіал по написанню гри «Space invaders»

Подивитися

The State of Go 1.10

Concurrency Patterns in Go

Two Ways of Merging a Number of Channels into One

High Performance Go

Advanced Go with Debugging Delve

An Introduction to Testing in Go

Helpful Go Practices: Working with Time

Creating GopherJS Apps with gRPC-Web
Using gRPC and Protocol Buffers from backend to browser.

Інструменти та бібліотеки

wsify (Websocketify): Realtime Pub/Sub Server

goben: інструмент для вимірювання пропускної здатності TCP/UDP між хостами.

Miniflux: мінімалістичний RSS рідер.

Go-Chassis: SDK для швидкої розробки микросервисов.

GRV: консольний інтерфейс для перегляду git репозиторіїв.

cam2ip: бібліотека, яка перетворює будь-яку web-камеру в IP камеру.

DNSCrypt-Proxy 2: DNS проксі з підтримкою сучасних протоколівDNSCrypt v2 іDNS-over-HTTP/2 .

url2img: HTTP Server c API для створення скріншотів веб-сайтів.

goiv: переглядач зображень.

Caire: бібліотека для ресайза зображень з урахуванням вмісту.

packr: бібліотека для вбудовування статики в бінарники Go.

GoReleaser: інструмент для автоматизації релізів.

JSON-to-Go: інструмент для перетворення JSON в Go структуру на льоту.

Commandeer: автоматично встановлює прапори командного рядка на основі полів структур та їх тегів.

Butler: інструмент для автоматизації створення нових проектів. Може створювати нові проекти на основі шаблонів, які є простими git репозиторіями.

php-парсер: PHP-парсер на Go. Підтримує синтаксис PHP 7 і PHP 5.

go-server-timing: бібліотека для використанняHTTP Server-Timing в Go.

Supercronic: cron для контейнерів, сумісний з crontab.

Опубліковано: 17/02/18 @ 08:01
Розділ Різне

Рекомендуємо:

Як IT-компанії відзначили День святого Валентина 2018
Чи впливає вік на просування сайту? Результати експерименту
Досвід ментора, або Допомагай іншим, і тобі буде краще
DOU Проектор: "Вчасно" — сервіс обміну електронними документами
Мій досвід роботи в Кореї: про ціни, IT-ринок та можливості для стартапів