С точки зрения пуристов, это нарушает все виды лучших практик (например, зависимость от реализации, тесная связь, непрозрачные зависимости и т. Д.). Я бы сказал это сам, но в последнее время я стремлюсь к более простым решениям, не вдаваясь в подробности «энтерпризей» функций и модных слов. Поэтому, если с вами все в порядке, вы пишете такой код, если эта архитектура обеспечивает быструю разработку, является тестируемой и, что наиболее важно, решает вашу бизнес-задачу - это просто прекрасно.