Когда использовать интерфейсы, когда дженерики?

Ответ

Интерфейсы - когда важно поведение (методы), тип может быть разным в runtime. Дженерики - когда нужна одна логика для разных типов, тип известен на этапе компиляции. Пример: io.Reader - интерфейс; функция func First[T any](s []T) T - дженерик. Часто комбинируют: ограничение типа дженерика интерфейсом.

🧠Квиз 🏆Лидеры 🎯Собесед. 📖Вопросы 📚База зн.