Что такое интерфейсы в Go и где их предпочтительно объявлять и хранить?

Интерфейс Go задаёт набор методов; тип реализует его неявно. Небольшой интерфейс обычно объявляют рядом с кодом, которому это поведение требуется.

Короткий ответ

Что ответить на собеседовании

Интерфейс Go задаёт набор методов; тип реализует его неявно. Небольшой интерфейс обычно объявляют рядом с кодом, которому это поведение требуется.

Подробный разбор

Ответ с пояснениями

Интерфейс Go задаёт набор методов; тип реализует его неявно. Небольшой интерфейс обычно объявляют рядом с кодом, которому это поведение требуется.

Так потребитель описывает минимальный контракт, а реализация не навязывает лишние методы. Не нужен общий пакет interfaces для всех типов только ради порядка. Общий публичный контракт уместен, когда его действительно используют несколько независимых частей системы.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее