Метка: go

Цикл for…range в Go

Цикл for…range очень удобен для перебора массивов, слайсов, карт. Имеет лаконичную и понятную запись. Рассмотрим три модификации использования Только с индексом. Вывод: Только со значением. Вывод: С индексом и значением.…

Go: удаление вложенных структур по many-to-many

Представим ситуацию, что нужно удалить записи из таблицы связи many-to-many. Пусть у нас есть некие пользователи и некоторые общие файлы, которые могут принадлежать любому пользователю. Нужно “убрать” файлы у конкретного…

Оптимизация структур Go

При составлении структур часто возникает ошибка Linter: fieldalignment: struct of size 96 could be 88 (govet) Происходит это по причине неоптимального порядка полей в структуре, которые занимают больше ресурсов, чем…

Получение строкового значения по ссылке

Иногда возникает необходимость получить значение строковой переменной по указателю, причём так, чтобы в случае отсутствия этого значения (nil) выводилась пустая строка. Вариант 1. Вариант 2. Использовать библиотеку https://github.com/samber/lo: