Всем доброго утра, нужен совето кто шарит в дизайне приложения.
Реализовываю класс фасад, в нем инициализирую объекты (подсиситемы), увидел два подхода, 1. Объекты передаются в конструктор по ссылки 2. Объекты инициализируются внутри класса, вопрос как вы реализовываете и в чем принципальное отличие если на практике
Если использовать Dependency Injection, то это дело вкуса - через конструктор инициализировать или внутри объекта.
К тому же могут быть ситуации когда некоторые зависимости не нужны на всем цикле жизни фасада, а только при вызове определенных методов. Допустим есть фасад и у него 8 подсистем 4 из них нужны всегда и они инициализируются в конструкторе 4 другие вспомогательные и используются только при определенных условиях в ряде методов - следовательно их можно не тащить в конструктор, а инициализировать по мере необходимости внутри объекта.