Habr<p>Design by Contract на минималках: пишем assertions и улучшаем устойчивость на Go</p><p>Всем привет! Меня зовут Александр Иванов, я старший разработчик в YADRO, работаю над созданием средств управления элементами опорной сети и пишу на Go. Мы с командой разрабатываем продукт для сервисов сотовой связи — качество нашей работы влияет на пользовательский опыт тысяч людей. Поэтому часто мы ищем решения, как повысить устойчивость работы кода в продакшене. Об одном из таких решений я расскажу в этой статье. Design by Contract — подход к проектированию ПО, в котором взаимодействие компонентов системы основано на контрактах. Контракты описывают ожидания вызываемой и вызывающей функции и улучшают производительность кода.</p><p><a href="https://habr.com/ru/companies/yadro/articles/888374/" target="_blank" rel="nofollow noopener noreferrer" translate="no"><span class="invisible">https://</span><span class="ellipsis">habr.com/ru/companies/yadro/ar</span><span class="invisible">ticles/888374/</span></a></p><p><a href="https://zhub.link/tags/dbc" class="mention hashtag" rel="tag">#<span>dbc</span></a> <a href="https://zhub.link/tags/design_by_contract" class="mention hashtag" rel="tag">#<span>design_by_contract</span></a> <a href="https://zhub.link/tags/defensive_programming" class="mention hashtag" rel="tag">#<span>defensive_programming</span></a> <a href="https://zhub.link/tags/assertion" class="mention hashtag" rel="tag">#<span>assertion</span></a> <a href="https://zhub.link/tags/assert" class="mention hashtag" rel="tag">#<span>assert</span></a> <a href="https://zhub.link/tags/%D0%BF%D1%80%D0%BE%D0%B4%D0%B0%D0%BA%D1%88%D0%B5%D0%BD" class="mention hashtag" rel="tag">#<span>продакшен</span></a> <a href="https://zhub.link/tags/%D0%BF%D1%80%D0%BE%D0%B8%D0%B7%D0%B2%D0%BE%D0%B4%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D1%81%D1%82%D1%8C" class="mention hashtag" rel="tag">#<span>производительность</span></a></p>