Интерфейс нужен, когда он выражает полезный контракт для потребителя, а не просто повторяет методы каждой структуры. Его отсутствие может быть осознанным упрощением.
Почему ты не объявил интерфейс?
Интерфейс нужен, когда он выражает полезный контракт для потребителя, а не просто повторяет методы каждой структуры. Его отсутствие может быть осознанным упрощением.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Интерфейс нужен, когда он выражает полезный контракт для потребителя, а не просто повторяет методы каждой структуры. Его отсутствие может быть осознанным упрощением.
В Go часто объявляют небольшой интерфейс там, где зависимость используется. Это помогает подменять реализацию и снижать связанность, если действительно есть такая граница.
Если реализация одна и абстракция не даёт выигрыша, конкретный тип может быть понятнее. На интервью объясните реальные причины выбора; без исходного кода нельзя утверждать, что интерфейс был обязателен или лишним.