Я извиняюсь за такой общий вопрос, но это может оказаться сложным для меня. Моя команда собирается приступить к большому проекту, который, надеюсь, объединит все случайные одноразовые кодовые базы, которые развивались на протяжении многих лет. Учитывая, что этот проект будет охватывать стандартизацию логических объектов в компании («Клиент», «Сотрудник»), небольшие задачи, большие задачи, управляющие небольшими задачами, и вспомогательные службы, я изо всех сил пытаюсь найти лучший способ структурировать пространства имен и структуру кода.
Хотя я предполагаю, что не даю вам достаточно подробностей, чтобы продолжить, есть ли у вас какие-либо ресурсы или советы о том, как логически подойти к разделению ваших доменов? Если это поможет, большая часть этой функциональности будет доступна через веб-службы, и мы являемся магазином Microsoft со всеми новейшими приспособлениями и гаджетами.
- Я обсуждаю одно массивное решение с подпроектами, чтобы упростить ссылки, но не сделает ли это слишком громоздким?
- Должен ли я завершить функциональность устаревшего приложения или оставить это полностью независимым в пространстве имен (например, создать класс
OurCRMProduct.Customer
вместо универсального классаCustomer
)? - Должен ли каждый сервис/проект иметь свои собственные
BAL
иDAL
, или это должна быть совершенно отдельная сборка, на которую все ссылается?
У меня нет опыта организации таких далеко идущих проектов, только разовые, поэтому я ищу любые рекомендации, которые могу получить.