Size: a a a

Software Design/Architecture/Zen

2021 July 20

SP

Sergey Protko in Software Design/Architecture/Zen
Представь себе что система которая выполняет юзкейс просто не имеет доступа к информации что бы произвести авторизацию. Микросервисы всякие. Когда тебе на вход просто эксес токен под конкретный ресурс и операцию приходит и все что остаётся это подпись проверить
источник

NF

Nikita Fedorov in Software Design/Architecture/Zen
ну это получается такой дженерик вариант, т.е. там же нет какого-то свич кейса по актору, а значит актор все ещё один, просто Actor<T> так скажем
источник

NF

Nikita Fedorov in Software Design/Architecture/Zen
ну т.е. это все ещё 1 актор, но мы слишком глупы чтобы дать ему нормальное явное имя
источник

SP

Sergey Protko in Software Design/Architecture/Zen
Да, это вопрос обобщения эктора для конкретной операции. Разные роли с разными уровнями доступа но представляющие одного эктора для этого юзкейса
источник

SP

Sergey Protko in Software Design/Architecture/Zen
Но в целом... Тот же трюк с эксес токенами будет и из нутри юзкейса работать. Главное что бы внутри небыло ветвлений, тогда срать на количество зависимостей
источник

NC

Nikita Chaykin in Software Design/Architecture/Zen
Почему тут все такое сложное , аааааа
источник

М

Махмуд in Software Design/Architecture/Zen
Я так понял что юзкейс как вариант можно поделить на юзкейсы "ПользовательУдалиСебя", "МодераторУдалиПользователя", "АдминУдалиПользователя"? 😁
источник

NC

Nikita Chaykin in Software Design/Architecture/Zen
Ребятки, объясните плз одну штуку, я уже вопрос кидал, может сейчас повезёт
источник

NC

Nikita Chaykin in Software Design/Architecture/Zen
Многие проектировщики, и я в том числе, любят разносить бизнес-логику по двум категориям: логика домена (domain logic) имеет дело только с предметной областью как таковой (примером могут служить стратегии вычисления зачтенного дохода по контракту), а логика приложения (application logic) описывает сферу ответственности приложения [11] (скажем, уведомляет пользователей и сторонние приложения о протекании процесса вычисления доходов) - "Кусочек чужого текста"

То есть, если вычисление не должно в чистом виде отдаваться на слой presentation, то мы должны его прокинуть в domain layer, а если вычисление и есть то, что мы хотим увидеть на контроллере, то можно и в application layer(service) закинуть, так, правильно понял?
источник

NF

Nikita Fedorov in Software Design/Architecture/Zen
нуу, нет скорее "УдаляльщикПользователейУдалиПользователя" если там нет разной логики под каждую из других ролей, но обычно мы не вводим настолько конкретные роли явно, а просто проверяем пермишн
(хотя иногда мы хотим иметь МенеджераПользователей в явном виде, но это сильно зависит от домена)
источник

HH

Human Human in Software Design/Architecture/Zen
Ну разве что ради шутки) Смысл если они делают одно и тоже?
Я не вижу минусов в том, чтобы вызывать проверку внутри так называемого usecase.

Похоже на ту тему где спорят про validate vs parse
источник

NF

Nikita Fedorov in Software Design/Architecture/Zen
дергать слои выше на прямую не страшно, а вот перемещать логику которая должна быть выше в нижележащий слой это уже попахивает
источник

М

Махмуд in Software Design/Architecture/Zen
Понял, спасибо всем за помощь 🤝
источник

NC

Nikita Chaykin in Software Design/Architecture/Zen
Ну я понимаю, что домена можно дернуть контролёром и сервис тоже
источник

NC

Nikita Chaykin in Software Design/Architecture/Zen
Но тут именно мне не понятен момент где грант сервиса, а где домена
источник

NC

Nikita Chaykin in Software Design/Architecture/Zen
Я вообще не понимаю кто что и почему заносит
источник

NC

Nikita Chaykin in Software Design/Architecture/Zen
Сервис = логика приложения
источник

NC

Nikita Chaykin in Software Design/Architecture/Zen
Но есть прикладная логика к этой логике
источник

NC

Nikita Chaykin in Software Design/Architecture/Zen
Это и есть домен ?
источник

NC

Nikita Chaykin in Software Design/Architecture/Zen
Ну то есть у нас приложение, которое берет и формирует pdf карточки , ну или не pdf, не важно , отдача pdfКи стримом = application layer, а конвертация из html в pdf = domain?
источник