Анонс Go digest: подземное хранилище гофера
Отгремели дженерики, вызвавшие нешуточные дискуссии в сообществе Go-разработчиков. Предлагаем обратить свой взор на другие инструменты и особенности языка. Сделайте небольшой перерыв, налейте кружку горячего напитка и загляните в наш дайджест.
Вначале поговорим об интерфейсном типе. Если объявляется переменная, параметр функции или поле структуры с интерфейсным типом, то можно использовать любой объект, удовлетворяющий интерфейсу. Это крутой способ, позволяющий уменьшить дублирование и отвязать нужные участки кода от конкретных типов.
Затем разберем фреймворк Kratos, название которого было навеяно серией игр God of War. Это отличный способ создания микросервисных cloud-native приложений. Он как швейцарский армейский нож содержит в себе исчерпывающий набор инструментов на любой случай. Простая интеграция со сторонними приложениями значительно расширяет его возможности.
Не ORMом единым. В отличие от других языков Go-разработчики предпочитают формировать запросы непосредственно на SQL с помощью стандартного пакета database/sql. Его возможности достаточно скромны, так что советуем подружиться с расширением sqlx. Это как раз то кунг-фу, которое позволит вам с легкостью оперировать даже сложными запросами.
В завершение поприветствуем фреймворк go-zero. Его можно использовать для разнообразных задач. Сегодня посмотрим, как работать с конфигурационными файлами. Приятного чтения!