Что такое composition over inheritance?

Middle
535 просмотров
AFK Offer AI

В Go нет наследования вообще — вместо него используется композиция. Ты встраиваешь один тип в другой через embedding, и внешний тип получает все методы внутреннего. Например, встраиваешь Logger в Server — и Server может вызывать Log() напрямую. Это проще и гибче, чем иерархии наследования, потому что нет проблемы хрупкого базового класса. Go осознанно заставляет тебя строить поведение из маленьких кирпичиков, а не тянуть длинные цепочки extends.

Следующий вопрос

Что такое flame graph?