powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Имеет ли такая организация проекта право на существование
15 сообщений из 15, страница 1 из 1
Имеет ли такая организация проекта право на существование
    #39621633
Фотография Sliva
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть задача на реализацию проекта на MVC. Проект будет состоять из множества модулей(20-40 штук).
Каждый бизнес модуль представляет собой некую систему, к примеру модуль заявок, модуль мероприятий и т.д.
Для удобства работы с модулем планируется организовать его так, чтобы вся работы велась в нем. В каждом модуле сделать структуру примерно такую. Один модуль - 1 dll. Слои разделены неймспейсами.



Соответственно получаем четкую структуру всего проекта, сразу понятно что где лежит и не бегаем по модулям. Соответственно, контроллеры и вьюМодели там.
Проект Web не имеет контроллеров и вьюМоделей.
Проект Core.Library хранит общий функционал, расширения и т.д.
Еще планируется проект для админки.

0. Есть мысли роуты, относящиеся к модулю, так же в проект модуль закинуть. Заполнение таблицы роутов будет в проекте Web, будем тянуть через рефлексию.
1. На сколько такая организация приемлема?
2. Как в больших проектах организовывают структуру солюшена?

Подскажите, как видится вам правильнее.
...
Рейтинг: 0 / 0
Имеет ли такая организация проекта право на существование
    #39621639
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sliva,

ХЗ. Какие-то модули.. какая у этих модулей связность? Будут ли они работать с одной БД или каждый со своей? Как модули взаимодействуют между собой и взаимодействуют ли? Разделяемые оперативные данные? Общие ресурсы?

Честно говоря, от того, что монолит разбит на 20-40 длл, вместо того, чтобы распихать всё по Area, не вижу никаких плюсов, всё равно монолит, пока не будет больше конкретики о том, какие задачи нужно решать, какой характер данных, сколько пользователей и функциональных ролей, как вообще собираетесь организовывать здесь безопасность?

Вообще тонна вопросов, и без ответов на них, ответ один: правильно это один единственный проект и «модули» засунуть в Area.

Вот так правильно, так как не надо делать телодвижения, не понимая зачем конкретно и для чего это делается. Какую пользу из этого можно извлечь. Ведь так придётся конкретно поебстись, чтобы просунуть свои скрипты, стили, вьюхи через длл. И как бы вы не придумали это сделать, это уже плохо пахнет, прямо на взлёте.
...
Рейтинг: 0 / 0
Имеет ли такая организация проекта право на существование
    #39621643
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sliva,

Разделить можно следующим образом для монолита:

1. Инфраструктурные сборки (DI, кеш, лог, блокировки, безопасность, и проч.)
2. Сборки доступа к данным (DAL, Repo...)
3. Бизнес-логика (при чём не важно сколько логических модулей, это на кол-во сборок не отражается напрямую, можно не париться и засунуть всё в одну DLL, и разделять по мере острой необходимости)
4. Компоненты для построения UI (dll, npm..)
5. Собственно единственное веб-приложение, которое содержит UI, соединяет всё добро в кучу и содержит только прикладной код. Прикладной код представляет собой набор действий контроллеров, разделённый по Area, которые выражают логическое разделение (бизнес-модули), действия контроллеров содержат код вызова бизнес-логики, используют во вью компоненты для размещения функционала, и связывает данные отправляемые/полученные с клиента с логикой (view model, binding, validation...)


SlivaПроект Web не имеет контроллеров и вьюМоделей.

Вот это совершенно точно геморрой на задницу.
...
Рейтинг: 0 / 0
Имеет ли такая организация проекта право на существование
    #39621675
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SlivaПодскажите, как видится вам правильнее.модулей в вашем понимании делать не нужно.
Сделайте первый проект без модулей. Т.к. он у вас первый.
А модуль заявок у вас АРМ автоматизированное рабочее место по ГОСТ.
В первом вашем проекте это просто страничка на веб сайте.
...
Рейтинг: 0 / 0
Имеет ли такая организация проекта право на существование
    #39621679
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SlivaКак в больших проектах организовывают структуру солюшена? сколько у вас страниц в приложении и табличек в базе?
Это выясняется до архитектуры. Чтобы не перепутать слово "большой")).
...
Рейтинг: 0 / 0
Имеет ли такая организация проекта право на существование
    #39625787
Фотография Sliva
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttSliva,

Разделить можно следующим образом для монолита:

1. Инфраструктурные сборки (DI, кеш, лог, блокировки, безопасность, и проч.)
2. Сборки доступа к данным (DAL, Repo...)
3. Бизнес-логика (при чём не важно сколько логических модулей, это на кол-во сборок не отражается напрямую, можно не париться и засунуть всё в одну DLL, и разделять по мере острой необходимости)
4. Компоненты для построения UI (dll, npm..)
5. Собственно единственное веб-приложение, которое содержит UI, соединяет всё добро в кучу и содержит только прикладной код. Прикладной код представляет собой набор действий контроллеров, разделённый по Area, которые выражают логическое разделение (бизнес-модули), действия контроллеров содержат код вызова бизнес-логики, используют во вью компоненты для размещения функционала, и связывает данные отправляемые/полученные с клиента с логикой (view model, binding, validation...)



Да, все "модули" будут работать с одной БД. И тут конфиг EF с подключенными DbSet со временем будет длиною в километр.

hVosttодин единственный проект и «модули» засунуть в Area.

1. Какие плюсы Area в отличие от разделения Неймспейсами?
2. По большому счету не имеет значения выносить bll, dal в длл или разделять их неймспейсами.
Проект на старте и планируется активно развиваться, хочется на старте сделать внятную архитектуру.
...
Рейтинг: 0 / 0
Имеет ли такая организация проекта право на существование
    #39625789
Фотография Sliva
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123SlivaКак в больших проектах организовывают структуру солюшена? сколько у вас страниц в приложении и табличек в базе?
Это выясняется до архитектуры. Чтобы не перепутать слово "большой")).

Пока не много, 20-30. Но у руководства большие планы. И хотелось бы на понять как он будет жить когда в нем будет 100-300 сущностей, которые работают с Entity Framework. Гоняя между слоями DTO.
...
Рейтинг: 0 / 0
Имеет ли такая организация проекта право на существование
    #39625796
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sliva1. Какие плюсы Area в отличие от разделения Неймспейсами?

Архитектурный способ разделения функциональности идущий из коробки.
Про неймспейсы речи не идёт, у каждой Area итак свой нейсмпейс по факту.

Sliva2. По большому счету не имеет значения выносить bll, dal в длл или разделять их неймспейсами.

Не имеет значения делать бессмысленные телодвижения.

SlivaПроект на старте и планируется активно развиваться, хочется на старте сделать внятную архитектуру.

Под словом внятная должны быть какие-то обоснования выбранным решениям.
Разделяй и властвуй, это хороший принцип, но если делаете монолит, то как раз таки хорошо, когда фрагментации меньше, чем больше.
...
Рейтинг: 0 / 0
Имеет ли такая организация проекта право на существование
    #39625801
Фотография Sliva
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt
Под словом внятная должны быть какие-то обоснования выбранным решениям.
Разделяй и властвуй, это хороший принцип, но если делаете монолит, то как раз таки хорошо, когда фрагментации меньше, чем больше.

Под внятностью понимается, что при значительном расширении проекта сложность разработки не увеличивалась, ну или не значительно.
"но если делаете монолит". Монолит-телодвижений меньше, но с опаской смотрю на это через 1-3 года. Во что он вырастит....
...
Рейтинг: 0 / 0
Имеет ли такая организация проекта право на существование
    #39625803
Фотография Sliva
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt,

и по поводу area, он же в рамках веб проекта создается. В слоях логики и репы структура папок своя.
...
Рейтинг: 0 / 0
Имеет ли такая организация проекта право на существование
    #39625827
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SlivaИ тут конфиг EF с подключенными DbSet со временем будет длиною в километр.через 3 года будут аннотации в каждом классе. И не будет вашего километра.
...
Рейтинг: 0 / 0
Имеет ли такая организация проекта право на существование
    #39625835
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Slivaбы на понять как он будет жить когда в нем будет 100-300с чего взял что это большое?
Когда будет 500, то разобёшь по функционалу. А не как программист захотел по dll'кам))).
Как у 1С:
1. Веб приложение, проект Торговляи Склал
2. Проект Бухгалтерия
3. Проект Кадры
...
А когда будет 500 таблиц, по любому перепишешь всё т.к. первый проект все переписывают)
...
Рейтинг: 0 / 0
Имеет ли такая организация проекта право на существование
    #39625874
Фотография Sliva
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123А когда будет 500 таблиц, по любому перепишешь всё т.к. первый проект все переписывают)
не первый проект. Но все проекты не имели неопределенности в плане развития и масштабирования. Были четкие ТЗ, с конечной точкой разработки. А тут бесконечная разработка все нового и нового функционала. Чтобы не было через 2-3 года куча чего то непонятного.
...
Рейтинг: 0 / 0
Имеет ли такая организация проекта право на существование
    #39625901
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SlivaБыли четкие ТЗв ТЗ по ГОСТ нет понятия DLL.
Есть понятия подсистема, модули по функционалу.
А ты пытаешься разрезать как программист. Смотри выше.
...
Рейтинг: 0 / 0
Имеет ли такая организация проекта право на существование
    #39625929
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SlivaПод внятностью понимается, что при значительном расширении проекта сложность разработки не увеличивалась, ну или не значительно.
"но если делаете монолит". Монолит-телодвижений меньше, но с опаской смотрю на это через 1-3 года. Во что он вырастит....

Ну а если конкретнее? Вырастет-то вырастет. Но что меняет тот факт, что вы растащили монолит по десятку DLL? Это абсолютно ничего не меняет, только усложняет разработку.

Slivaи по поводу area, он же в рамках веб проекта создается. В слоях логики и репы структура папок своя.

Вообще, в веб-приложении не должно быть логики. Логика как раз выносится отдельно. Но Area содержат именно UI часть, вью-модели, контроллеры. Общий пул скриптов и стилей. Но это по-старинке. Если делаете Angular/React/etc., Area тогда не нужны.
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Имеет ли такая организация проекта право на существование
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]