Возникала ли у вас задача, связанная с разработкой тестов для модуля, который взаимодействует с базой данных и при этом вам не хочется привязывать модуль тестов к настоящей базе данных. В основной поставке Go есть инструмент для таких нужд под названием «FakeDb».
Эмуляция работы базы данных в тестах с помощью FakeDb: https://habr.com/ru/post/485280/
Эмуляция работы базы данных в тестах с помощью FakeDb: https://habr.com/ru/post/485280/
Хабр
Go. FakeDb. Эмуляция работы БД в тестах
На днях писал тесты для модуля, который взаимодействует с базой данных. Привязывать модуль тестов к настоящей базе данных не хотелось — это создаёт дополнительны...
Инлайнинг defer
Эффективным способом справиться с ресурсами, которые должны быть освобождены независимо от того, какой путь функция принимает для возврата, является использование оператора defer. Знакомимся с переводом статьи «Инлайнинг defer» и применяем этот мощный оператор при разработке своих проектов: https://4gophers.ru/articles/defer/
Эффективным способом справиться с ресурсами, которые должны быть освобождены независимо от того, какой путь функция принимает для возврата, является использование оператора defer. Знакомимся с переводом статьи «Инлайнинг defer» и применяем этот мощный оператор при разработке своих проектов: https://4gophers.ru/articles/defer/
В статье приводится подборка из 10 источников для изучения Go, с упором на онлайн ресурсы: https://www.agiratech.com/learn-go-programming-tutorials/
database-driven-apps-with-go.pdf
582.2 KB
Пожалуй один из самых удачных материалов по работе с базами данных в Go
Свод правил, позволяющих обеспечить управляемость кодовой базы и продуктивное использование возможностей языка Go. Специалисты Uber делятся правилами оформления кода в формате плохо-хорошо: Uber Go Style Guide.
GitHub
guide/style.md at master · uber-go/guide
The Uber Go Style Guide. Contribute to uber-go/guide development by creating an account on GitHub.
Gio позволяет реализовать переносимые программы с графическим интерфейсом на Go. Программы Gio работают на всех основных платформах: iOS / tvOS, Android, Linux (Wayland / X11), macOS, Windows, FreeBSD, OpenBSD + экспериментальная поддержка браузеров (Webassembly / WebGL).
Gio включает эффективный векторный рендеринг, основанный на проекте Pathfinder. Текст и другие фигуры визуализируются с использованием только их контуров, чтобы поддерживать эффективную анимацию, преобразованный рисунок и независимость от разрешения пикселей.
Все подробности здесь: https://gioui.org/
Кстати, автор данного модуля (Elias Naur) будет выступать на предстоящей GopherCon Russia 2020
Gio включает эффективный векторный рендеринг, основанный на проекте Pathfinder. Текст и другие фигуры визуализируются с использованием только их контуров, чтобы поддерживать эффективную анимацию, преобразованный рисунок и независимость от разрешения пикселей.
Все подробности здесь: https://gioui.org/
Кстати, автор данного модуля (Elias Naur) будет выступать на предстоящей GopherCon Russia 2020
GitHub
GitHub - servo/pathfinder: A fast, practical GPU rasterizer for fonts and vector graphics
A fast, practical GPU rasterizer for fonts and vector graphics - servo/pathfinder
Ваша страна
Anonymous Poll
62%
Россия
17%
Украина
6%
Беларусь
8%
Другие страны СНГ
3%
Европейские страны
1%
США
4%
Другое государство
Для жителей РФ: ваш город?
Anonymous Poll
35%
Москва
14%
Питер
17%
Город-миллионник
34%
Другие города
Вы уже сталкивались в своей пратике с каналами в Go. Давайте заглянем «под капот» данной технологии и разберемся как она работает изнутри:
– Под капотом Golang — как работают каналы. Часть 1.
– Строение каналов в Golang. Часть 2.
– Под капотом Golang — как работают каналы. Часть 1.
– Строение каналов в Golang. Часть 2.
Medium
Под капотом Golang — как работают каналы. Часть 1.
Как устроены каналы в языке golang? Почему выполнение горутины прерывается? Почему каналы — такие эффективные? Отвечаем на вопросы
2 статьи, которые требуют вашего внимания при разработке веб-приложений на Go:
– Преимущества использования Golang для вашего следующего веб-приложения
– Рейтинг лучших веб-фреймворков для разработки на Go
– Преимущества использования Golang для вашего следующего веб-приложения
– Рейтинг лучших веб-фреймворков для разработки на Go
MindInventory
Advantages of Using Golang for Your Next Web Application Project
Golang becoming the preferred choice of the developers today. Let’s find the reasons to choose Golang for your next project.
Даже такие гиганты, как American Express выбирают Go для разработки своих внутренних сервисов. Причины этого с примерами кода вы увидите в статье: https://americanexpress.io/choosing-go/
American Express Technology
Choosing Go at American Express
A look into how American Express decided to use Go for some of its most critical applications.
get_programming_with_go.pdf
9.1 MB
Get Programming with Go (2018)
Авторы: Nathan Youngman и Roger Peppe
Книга является отличным примером введения в язык Go с примерами кода, которые можно воспроизвести прямо в Go Playground.
Авторы: Nathan Youngman и Roger Peppe
Книга является отличным примером введения в язык Go с примерами кода, которые можно воспроизвести прямо в Go Playground.
Практическое руководство: советы по написанию реальных программ на Go
Из видео вы узнаете лучшие практические рекомендации в следующих направлениях: идиоматический код, разработка пакетов и API, обработка ошибок, параллелизм и тестирование: https://youtu.be/eB0ypsFTG20
Из видео вы узнаете лучшие практические рекомендации в следующих направлениях: идиоматический код, разработка пакетов и API, обработка ошибок, параллелизм и тестирование: https://youtu.be/eB0ypsFTG20
Ребята проводят код-ревью проектов на языке Go, рассказывая о том, как эти проекты сделаны, почему они так сделаны и как можно лучше. Обязательно к просмотру!
YouTube
Go - YouTube
В преддверии официального релиза Go версии 1.14 (заметки о выпуске, накопившиеся в процессе работы, уже готовы), давайте ознакомимся с изменениями, коснувшимися языка и всего, что с ним связано, с версии 1.12: https://youtu.be/0c-1KJwSMCw
tip.golang.org
Go 1.14 Release Notes - The Go Programming Language
На канале уже упоминался волшебный проект Buffalo, который представляет из себя экосистему для веб-разработки на Go. Напомним, что Buffalo позволяет создать веб-проект, в котором уже есть все, начиная с внешнего интерфейса (JavaScript, SCSS и т. д.) и заканчивая бекендом (база данных, маршрутизация и т. д.), уже подключенными и готовыми к запуску. Оттуда он предоставляет простые API для быстрого создания веб-приложения на Go.
Всю информацию можно найти на официальном сайте или в репозитории. Просто нам хотелось еще раз показать всю прелесть и простоту работы с данным инструментом на примере преобразования статического сайте в проект Buffalo: https://www.gopherguides.com/articles/converting-a-static-website-to-golang-buffalo/
Всю информацию можно найти на официальном сайте или в репозитории. Просто нам хотелось еще раз показать всю прелесть и простоту работы с данным инструментом на примере преобразования статического сайте в проект Buffalo: https://www.gopherguides.com/articles/converting-a-static-website-to-golang-buffalo/
Десять рекомендаций-постулатов для написания простого, читаемого и поддерживаемого кода на Go, представленных на недавней GopherCon Israel 2020: https://the-zen-of-go.netlify.com
Довольно смелый пост о том, что Go – это новый Ruby: https://00f.net/2019/10/28/go-is-the-new-ruby/