#
interfaces
Интерфейсы и их неявная реализация в Go
ПрограммированиеGo интерфейсы: неявное удовлетворение и fmt.Stringer
Разбор неявного удовлетворения интерфейсов в Go: как компилятор и рантайм определяют вызов String() из fmt.Stringer вместо go форматирования. Способы обхода, примеры с User, преимущества для логов и CLI.