Ответ на этот вопрос может быть очень длинным в отношении объема аргумента, я думаю, что в первую очередь было бы лучше сосредоточиться на том, что является выбором и причинами, которые сделали необходимым отделить пунктов в несколько сборок, и в целом это может быть в общем проектирование и наслоение и / или чистота структуры проекта.
1. Каковы преимущества разделения Solutions / DLL?
Преимущество разделения решений и сборок в целом связано с подходом к проектированию, повторным использованием кода и организацией слоев, как уже говорилось, разделение решений помогает совместно использовать объекты / компоненты и распределять ответственность между уровнями, продвигать многоцелевые и подключаемые модули. решения (см., например, различные целевые сборки хранилища (база данных, файлы и т. д.)), тестируемость
2. Каковы недостатки разделения Solutions / DLL?
Основными недостатками, как говорили другие до меня, являются, прежде всего, сложность (управление, обслуживание), затем производительность (но это другое обсуждение, это не просто сказать)
3. Если я создам новое решение / DLL для каждого общего ресурса, не будет ли много решений?
Это зависит, во-первых, я думаю, что это может зависеть от выбора дизайна
4. После слишком большого количества решений (например, 40+) это будет иметь некоторые негативные последствия для производительности IDE (VS.NET 2008)?
Я не уверен в снижении производительности в IDE VS2008, но уверен, что это может повлиять на производительность при управлении одним решением из более чем 60 проектов, чем, например, 4 решения по 20 проектов в каждом ..
Должно быть ясно, что производительность VS IDE может снизиться даже после открытия, например, 35 файлов вместе из одного или двух проектных решений.
В конце я думаю, что БОЛЬШОЙ, о чем я должен помнить, это то, что лучше "построить" именно то, что действительно нужно, чем, например, чрезмерно проектировать, поэтому, когда вещи становятся слишком сложными для управления (для многих проектов) ) лучше остановиться и подумать "все идет хорошо?"