Я думаю, что у вас есть проблема со связью или проблема с номенклатурой, потому что разделение интересов, как правило, означает нечто иное.
Строго говоря, разделение интересов касается таких вещей, как принцип единой ответственности, вчто каждый класс имеет дело со своим собственным доменом.Принцип единой ответственности гласит, что класс должен иметь только одну причину для изменения.
Некоторыми примерами разделения интересов являются шаблоны абстракции представления и модели, такие как MVC или MVVM.В тех случаях, когда каждый компонент, будь то представление или модель, имеет дело с абстракцией пользовательского интерфейса или данными и проверкой, но не обоими.
Разделение кода на отдельные сборки является хорошей практикой, когда код может совместно использоваться несколькими проектами.(как ты сам уже указал).Простое структурирование кода может быть выполнено с использованием различных пространств имен.
Когда у вас много кода, сборки - это естественный способ группировки кода, когда вы управляете кодом на разных уровнях и имеете очень контролируемые точки расширяемости и желания.чтобы заблокировать это, сборки обеспечивают этот уровень изоляции.