Задать вопрос
@marlaaa

Как правильно разделить логику между контроллерами с usecases?

Я только начинаю изучать чистую архитектуру и буду благодарен за любой совет. У меня есть проект (asp.net), и я собираюсь переписать его на чистую архитектуру. Мне нужно использовать отдельный usecase для каждой crud-операции, например: createThingUseCase, deleteThingUseCase? Я слышал, что у меня должен быть один usecase для одного контроллера. Мне нужно создать контроллер для каждой операции, или я чего-то не понял?

У меня есть контроллер входа и контроллер для регистрации, это понятно. Но у меня есть, например, ThingsController с crud-операциями. Мне надо разделить его на несколько под каждую операцию?
  • Вопрос задан
  • 99 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • OTUS
    C# Developer. Professional
    6 месяцев
    Далее
  • Ulearn.me
    Основы программирования на примере C#. Часть 1
    1 неделя
    Далее
  • Ulearn.me
    Основы программирования на примере C#. Часть 2
    1 неделя
    Далее
Пригласить эксперта
Ответы на вопрос 1
@mvv-rus
Настоящий админ AD и ненастоящий программист
Абстрактно "правильного" варианта реализации нет, всё зависит от конкретных деталей.
В частности, посмотрите, используют ли ваши методы действий одни и те же внешние зависимости, или каждый - свои. Во втором случае некотоый смысл разнести их по разным контролерам есть: снизить сложность, которую дают лишние, не обусловленые задачей связи (coupling). А первом случае - нет (но может и появиться по другим основаниям).

А вся эта теория "чистой архитектуры" - она абстрактная. Ее полезно знать, чтобы иметь возможность рассмотреть больше вариантов решения, и видеть больше про возможных подводных камней, а вот фанатично ей следовать не стоит (если, конечно, ваша задача - сделать что-то полезное, а не спихнуть курсовик и т.п.).
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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