Какой реальный баг может возникнуть из-за неправильного понимания method set?
Что хотят услышать интервьюеры:
Суть: method set определяет, какие методы доступны типу и указателю на тип.
Ответ:
Пример:
func (u *User) Save(){} Практический акцент: Проверяйте не только happy path: добавьте негативные сценарии, timeout/cancel, граничные значения и регрессионный тест на типичную ошибку.
Типичная ошибка: не понимать, почему значение не реализует интерфейс, если метод объявлен на pointer receiver.
Как отвечать на собеседовании: Расскажите про неявную реализацию, маленькие интерфейсы и осознанное использование generics, а не про наследование.