Сообщение Re[7]: Контроллер, сервисы и DTO. от 01.05.2020 18:06
Изменено 01.05.2020 18:19 Qulac
Re[7]: Контроллер, сервисы и DTO.
Здравствуйте, Pavel Dvorkin, Вы писали:
PD>Здравствуйте, Qulac, Вы писали:
PD>>>Если он виден presentation layer, то он не изолирован
Q>>Смотря что понимать под "изолированостью".
PD>Невозможность внесения изменений в структуры данных домена и ниже (БД) извне его. Только он сам может эти изменения вносить.
Q>>>>Выделять отдельный слой с функцией "изолятора" и работы с сущностными не лучшая идея. Я пробовал так, все время кажется, что он тут лишний.
Q>>Все равно лишний. Сервисы могут пригодится когда нужно выделить общий функционал у разных видом интерфейсов приложения, а так они не нужны. Зачем плодить лишние сущности?
PD>Ты предлагаешь все в контроллере делать ? Тогда, у него будет 2 функции : presentation layer и бизнес-логика. Как заменить presentation layer в случае необходимости ? Например, вместо REST — GUI. Домен не должен измениться — он определяется задачей, а не способом передачи запросов и показа ответов.
Где тут бизнес-логика вылезла? Все на месте.
PD>Здравствуйте, Qulac, Вы писали:
PD>>>Если он виден presentation layer, то он не изолирован
Q>>Смотря что понимать под "изолированостью".
PD>Невозможность внесения изменений в структуры данных домена и ниже (БД) извне его. Только он сам может эти изменения вносить.
Q>>>>Выделять отдельный слой с функцией "изолятора" и работы с сущностными не лучшая идея. Я пробовал так, все время кажется, что он тут лишний.
Q>>Все равно лишний. Сервисы могут пригодится когда нужно выделить общий функционал у разных видом интерфейсов приложения, а так они не нужны. Зачем плодить лишние сущности?
PD>Ты предлагаешь все в контроллере делать ? Тогда, у него будет 2 функции : presentation layer и бизнес-логика. Как заменить presentation layer в случае необходимости ? Например, вместо REST — GUI. Домен не должен измениться — он определяется задачей, а не способом передачи запросов и показа ответов.
Где тут бизнес-логика вылезла? Все на месте.
customRepository.Find("SearchString").Select(()=>new CustomeViewModel(.......
Re[7]: Контроллер, сервисы и DTO.
Здравствуйте, Pavel Dvorkin, Вы писали:
PD>Здравствуйте, Qulac, Вы писали:
PD>>>Если он виден presentation layer, то он не изолирован
Q>>Смотря что понимать под "изолированостью".
PD>Невозможность внесения изменений в структуры данных домена и ниже (БД) извне его. Только он сам может эти изменения вносить.
Q>>>>Выделять отдельный слой с функцией "изолятора" и работы с сущностными не лучшая идея. Я пробовал так, все время кажется, что он тут лишний.
Q>>Все равно лишний. Сервисы могут пригодится когда нужно выделить общий функционал у разных видом интерфейсов приложения, а так они не нужны. Зачем плодить лишние сущности?
PD>Ты предлагаешь все в контроллере делать ? Тогда, у него будет 2 функции : presentation layer и бизнес-логика. Как заменить presentation layer в случае необходимости ? Например, вместо REST — GUI. Домен не должен измениться — он определяется задачей, а не способом передачи запросов и показа ответов.
Где тут бизнес-логика вылезла? Все на месте.
PD>Здравствуйте, Qulac, Вы писали:
PD>>>Если он виден presentation layer, то он не изолирован
Q>>Смотря что понимать под "изолированостью".
PD>Невозможность внесения изменений в структуры данных домена и ниже (БД) извне его. Только он сам может эти изменения вносить.
Q>>>>Выделять отдельный слой с функцией "изолятора" и работы с сущностными не лучшая идея. Я пробовал так, все время кажется, что он тут лишний.
Q>>Все равно лишний. Сервисы могут пригодится когда нужно выделить общий функционал у разных видом интерфейсов приложения, а так они не нужны. Зачем плодить лишние сущности?
PD>Ты предлагаешь все в контроллере делать ? Тогда, у него будет 2 функции : presentation layer и бизнес-логика. Как заменить presentation layer в случае необходимости ? Например, вместо REST — GUI. Домен не должен измениться — он определяется задачей, а не способом передачи запросов и показа ответов.
Где тут бизнес-логика вылезла? Все на месте.
customRepository.Find("SearchString").Select((с)=>new CustomeViewModel(.......