🚧 Errors in Go: Хватит сравнивать ошибки через ==
Знакомая картина? Вы пишете запрос к базе, получаете ошибку, оборачиваете её для логов и возвращаете наверх:
// Слой репозитория…
Читать далее →
Counterfeiter — инструмент для генерации самостоятельных, типобезопасных тестовых заглушек в Go
При модульном тестировании часто нужны поддельные реализации зависимостей. В Go так…
Читать далее →
Препроцессоры на Go: нарушение границ или сила -toolexec Мы в Смартомато — супер продуктовые ребята.
Препроцессоры на Go: нарушение границ или сила -toolexec
Мы в Смартомато — супер продуктовые ребята. Со временем у нас скопились недовольство по поводу работы с Golang, захотелось залезть в технические дебри. Произошла гиперкомпенсация и мы придумали препроцессинг в Go. Да, несмотря на то, что этот язык официально не поддерживает препроцессоры — мы всё равно сделали. А сейчас делимся результатами этой работы с вами.
Эта статья по мотивам моего доклада на Golang Conf X 2025 о болях шаблонного кода и вариантах их решения с помощью препроцессинга на базе стандартного тулчейна Go. В тексте не будет сравнения с препроцессорами в других языках и морально-этической оценки решения.
https://habr.com/ru/companies/oleg-bunin/articles/958946/
👉 @golang_lib
🧠 Планировщик Go (GMP): Как 100 000 горутин работают на 4 ядрах
Джуны часто думают, что горутины это магия. Написал go func(), и оно как-то само параллелится. Сеньоры знают, что п…
Читать далее →
Ты не все знаешь о массивах и слайсах в Go
Таймкоды:
00:00 - Введение
00:47 - Устройство массивов в Go
01:40 - Работа с массивами в Go
10:00 - Перемещение массива в стеке
11:29 - …
Читать далее →