Minoru
я так понимаю, что наследование по-настоящему пригождается лишь в нескольких областях, которые описываются развесистыми деревьями — например, GUI с их иерархией виджетов и, возможно. игры с их элементами мира. В остальных областях получаются очень мелкие деревья наследования, и буквально «отнаследовался от интерфейса и всё» — а для этого и наследование не нужно, достаточно тайпклассов (Haskell) / трейтов (Rust)