Папок или проектов в решении Visual студии?

При скалывании решение в логических слоях, когда лучше использовать отдельный проект более чем просто группировка по папкам?

При скалывании решение в логических слоях, когда лучше использовать отдельный проект более чем просто группировка по папкам?

По умолчанию всегда просто создать новую папку в пределах одного и того же проекта Вы получите единую сборку (без дополнительных ILMerge гимнастика) Легче скрыть (потому что вы будете иметь меньше общих типов и методов, в идеале вообще без него) Отделяя свой исходный код в нескольких проектах имеет смысл только если вы... Есть некоторые части кода, которые являются частью проекта, но не боеготовая по умолчанию или вообще (unit-тесты, дополнительные плагины и т. д.) Больше разработчиков, вовлечены и вы хотите относиться к своей работе как расходник черного ящика. (не очень рекомендуется) Если вы можете четко разделить ваш проект на отдельные слои/модули и вы хотите, чтобы убедиться, что они могут не потреблять внутренние члены. (также не рекомендуется, потому что вам нужно решить, какой аспект является самым важным) Если вы считаете, что некоторые участки исходного кода могут быть многоразовые, до сих пор не могу создать новый проект. Просто подождите, пока вы действительно хотите использовать его в другой раствор и изолировать его из первоначального проекта по мере необходимости. Программирование-это не лего, повторное использование, как правило, очень сложно, а часто и не произойдет, как и планировалось.

Разделение функций в проектах часто является YAGNI оптимизации архитектуры. Как часто вы повторно использовать эти отдельные проекты, правда? Если это не частое явление, ты усложняешь свои разработки, построения, развертывания и обслуживания для теоретического использования. Я предпочитаю отделять в папки (используя соответствующие пространства имен) и рефакторинг отдельных проектов, когда у тебя в реальной жизни случае применения повторного использования.

Денни писал: Я лично считаю, что если многоразовый код разбивается на проекты, он проще в использовании других местах, чем если бы он просто в папках. Я действительно согласен с этим - если вы можете повторно использовать его, она должна быть в отдельном проекте. С что сказал, Это же очень сложно эффективно использовать :) Вот так, мы старались быть очень простой с тремя проектами: Веб-проекта MVC (который делает хорошую работу, отделять слои в папки по умолчанию) Проект базы данных для управления источником нашей БД Модульные тесты против моделей в MVC/контроллеры Я не могу говорить за всех, но я доволен тем, как просто мы сохранили это - действительно ускоряет строит вместе!

Я обычно делаю проект для проекта ГИП для бизнес-логики проекта для доступа к данным проекта для юнит-тестов. Но иногда целесообразно разделение на основе услуг (при использовании сервис-ориентированной архитектуры), такие как проверка подлинности, продаж и т. д. Я думаю правило, что я работаю рядом, если вы можете увидеть его в качестве компонента, который имеет четкое разделение то другой проект может быть разумным. Но я думаю, что папки против проектов может быть просто предпочтение или философии. Я лично считаю, что если многоразовый код разбивается на проекты, он проще в использовании других местах, чем если бы он просто в папках.

Отделяя свой исходный код в несколькими проектами, имеет смысл только если вы... ... Больше застройщиков а вы хотите относиться к своей работе как расходник черного ящика. (не очень рекомендуется) ... Почему это не рекомендуется? Я нашел его очень полезным способом управления приложением с несколько разработчиков, работающих на различных участках. Делает возвраты гораздо легче, в основном за счет отказа сливает. Очень редко два разработчики должны работать над одним проектом одновременно.

Если вы идете для создания нескольких проектов, убедитесь, что каждый, кто добавляет код, чтобы раствор полностью осведомлены о намерении их и сделать все возможное, чтобы заставить их понять зависимости между проектами. Если вы когда-нибудь пытались разобраться в том бардаке, когда кто-то пошел и добавил ссылки, которые не должны были там и ушел с нее в течение нескольких недель вы поймете этот момент

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