Короче вывод примерно такой с уменьшением гранулярности и ответственности растет колличество синтетических связей и объектов и уровней вложенности в классическом ооп коде
В который инжектишь нужные данные из классов что бы произвести вычисления так как вычисление вообшем случае требуют данные которыми владеют разные объекты и само вычисление тоже не принадлежит классу вычисления
Там же пример игрового движка что когда у тебя куча взаимодействуюших объектов выходит что ресурсы должен хранить менеджер а сами классы хранять хендлеры и взаимодействуют тоже по средствам других классов