RU

Как ощущаются 70к строк TS для гетеросексуала Go — потратить год жизни в 18

Сегодня я хочу рассказать про то, как гетеросексуальный бэкендер (до этого момента коим я себя в той или иной степени считал) переживает болезненный о…

frontendfront-end разработкаnext.jstsgogolangой
Habr
RU

Почему Go-сервисы начинают тормозить без ошибок (и при чём тут goroutines). Часть 1

Часто про Go говорят:  «это язык, где конкурентность почти бесплатная» . И знаете что? Это правда. Почти. Но  «почти»  — это самое опас…

изучение языковgogolanggoroutinegoroutinesпрограммированиепроизводительностьмониторингсистемное программированиеархитектура
Habr
RU

Особенности и ловушки модели памяти в Go: тайны синхронизации. Часть 2

Описание модели памяти Go начинается со слов «если вы читаете этот документ — вы излишне умный, остановитесь». Многие и правда остановились, но не авт…

gogolanggolangconfвопросы языкознанимногопоточное программированиеконференциипрограммированиепамять
Habr
RU

Фикстуры в Go: как перестать писать инфраструктуру в автотестах

В Go нет фикстур, и в интеграционных тестах это быстро превращается в копипаст. Разбираем, как вынести инфраструктуру из автотестов и управлять жизнен…

gogolangqaqa automationфикстурыfixturesfixturetest frameworkgo testавтотесты
Habr
RU

DDD в Go без красивых схем: как один платеж получил три курса валют

В какой-то момент у нас один платеж начал жить с тремя курсами валют: checkout показывал сумму из Redis, payment-service ходил в API, а ledger писал п…

ddddomain-driven designgogolangархитектураvalue objectaggregate rootплатежикурсы-валютdecimal
Habr
RU

Особенности и ловушки модели памяти в Go: тайны синхронизации. Часть 1

Большинство программистов, работая с многопоточным кодом, осведомлены о примитивах синхронизации. При этом мало кто задумывается о существующей за эти…

gogolangмногопоточное программированиеконференциипамятьВопросы языкознания
Habr
RU

Система фейков для сквозного тестирования

В мире микросервисов и сложной продуктовой логики наступает момент, когда классические E2E-тесты превращаются в проблему. Количество пользовательских …

тестированиемикросервисыgoe2e тестированиеgolangавтоматизация тестированияavitotechинтеграционное тестированиеархитектураqa