170 похожих чатов

У меня есть простое WebApi приложение для кодирования\декодирования данных Сейчас я

на этапе чтобы научиться работать со слоями

Я выделил есть 4 слоя

1) DAL: хранит в себе Entity и Repository
2) Application: хранит в себе EncodeSerivce, DecodeService, InputValidator
3) WebApi: хранит в себе контроллеры и DTO
4) Domain

Вопрос: что должен в себе хранить слой Domain ?

26 ответов

5 просмотров

сущности, константы

Roman-Salnikov Автор вопроса
sayonara
сущности, константы

Не совсем понятно

Roman Salnikov
Не совсем понятно

Ты примеры не смотрел у других людей?

Roman-Salnikov Автор вопроса
sayonara
Ты примеры не смотрел у других людей?

Смотрел один репозиторий, но там таких слоев вообще нет Сейчас ещё гляну В основном по видосам пытался понять или у гпт

Roman Salnikov
Смотрел один репозиторий, но там таких слоев вообщ...

Domain это ядро монолита, к которому имеет доступ каждый иной слой, и так принято что там лежат сущности, так как у тебя на них и построено всë остальное.

Может он не нужен?

sayonara
Domain это ядро монолита, к которому имеет доступ ...

У него слоёная архитектура, там по другому

Roman-Salnikov Автор вопроса
Oleg Safonov
Может он не нужен?

ну я пока не знаю как правильно, хочу хоть как-нибудь сделать чтобы показать можно было вроде нашел three layer architecture , тут просто webapi domain и dal

Roman Salnikov
ну я пока не знаю как правильно, хочу хоть как-ниб...

Да, три слоя норм, api ходит в domain/app, а он уже в dal. При этом api в dal не ходит и про него не знает вообще, т.е. перепрыгивать слои нельзя. А сбоку уже шарится между всеми инфра всякая, типа логирования

Roman-Salnikov Автор вопроса
Oleg Safonov
Да, три слоя норм, api ходит в domain/app, а он уж...

InputValidator на стороне приложения должен же быть, не на стороне бизнеса?

Roman Salnikov
InputValidator на стороне приложения должен же быт...

А что есть сторона приложения и что - сторона бизнеса в разрезе слоёв?

Roman-Salnikov Автор вопроса
Oleg Safonov
А что есть сторона приложения и что - сторона бизн...

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

Roman Salnikov
ну я о том, что невалидные данные не должны приход...

На каждом слое проверять нужно, если типами не гарантируется. Domain и app в данном случае - одно и то же может быть, т.е. один слой.

Roman-Salnikov Автор вопроса
Oleg Safonov
А что есть сторона приложения и что - сторона бизн...

ну бизнес это основная логика и плюс обращение к бд приложение - это после реквеста и до бизнеса

Roman-Salnikov Автор вопроса
Oleg Safonov
Бизнес - это не обращение к бд 🤔

я имел ввиду путем обращения к репозиторию из dal

Roman Salnikov
ну бизнес это основная логика и плюс обращение к б...

Что после реквеста и до бизнеса?) Очень размазанно сейчас формулируете

Roman-Salnikov Автор вопроса
Oleg Safonov
Что после реквеста и до бизнеса?) Очень размазанно...

ну как я понимаю, получили запрос, контроллер вызвал сервис в Application. А Application уже дергает бизнес слой

Roman Salnikov
ну как я понимаю, получили запрос, контроллер вызв...

А что в апп тогда будет? Зачем это лишний слой?

Roman-Salnikov Автор вопроса
Oleg Safonov
А что в апп тогда будет? Зачем это лишний слой?

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

Roman Salnikov
ну вот я и думаю, нужен ли он потому что, как пис...

Почему не засунуть то? Любой слой должен проверять входные данные

Roman-Salnikov Автор вопроса
Oleg Safonov
Почему не засунуть то? Любой слой должен проверять...

ну если данные не валидные пришли в запросе, то мы сразу даём error response, то есть ещё не зашли в бизнес слой

Roman-Salnikov Автор вопроса
Γενναίος
https://www.youtube.com/watch?v=lkmvnjypENw&ab_cha...

пролистал видос по быстрому - надо чтото попроще, вроде как 3 слоя самое норм

Похожие вопросы

Обсуждают сегодня

а зачем этот вопрос для удаления из чата?
Mёdkinson Medvezhkin
63
Привет ) есть такой кусок кода, он считывает ini файл. my $conf = Config::IniFiles->new( -file => $ini_file ); if (!$conf) { $self->my_die('cannot_read_cfg', ...
Kolya lastname
7
Добрый день. Хочу сделать отрисовку по команде на панели. Почему-то рисуется только при втором вызове. С чем может быть связано, не подскажете? procedure TForm1.FormDblClick(...
Kirill Filippenok
20
Блин, интересно, кто-нибудь когда-нибудь переписывал какую-нибудь игру с x86 на arm? Вообще, такое возможно?
Alan 🔝 Бэброу
13
Всем привет! Подскажите. Я написал приложение на Delphi 10.2 Tokyo под Windows 10. И передо мной стал вопрос о том чтобы сделать это приложение кроссплатформенным (под Linux и...
Дмитрий Завгородний
24
I just installed it but how do I use it?
Talula
12
Всем привет! Нужен совет от опытных. Переношу свой проект с Делфи 10.2 Токио на Лазарус 3.2 установленный через инсталлятор fpcupdeluxe-x86_64-win64. При импортировании проект...
Дмитрий Завгородний
7
Всем доброго дня! Подскажите может кто использовал связку Pagebuilder + Clientsetting. Сами параметры с типом pagebuilder в модуле Clientsetting работают нормально, можно такж...
Александр Добриков
12
А почему в си некоторые вещи работают с двойными кавычками некоторые с одинарными? Нельзя было все сделать с одними или чтоб работало с разными? например чтоб выводить строки ...
.
15
Эх кто-то пришел и весь праздник испортил :( You need complex FBX scene importing setup to change things on import? good luck with that. You need navigation and pathfinding? g...
Serg Gini
5
Карта сайта