«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Где должна происходить обработка условий: в устройствах отображения данных или на уровне обслуживания?

Где должна происходить обработка условий: в устройствах отображения данных или на уровне обслуживания?

Опубликовано 15 ноября 2024 г.
Просматривать:580

Where should condition handling happen: Data Mappers or Service Layer?

Сопоставители данных и сервисный уровень: обработка условий в сложных запросах

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

Сопоставитель данных

Основная задача преобразователя данных — облегчить взаимодействие между объектом предметной области и его механизмом сохранения. Он преобразует объекты предметной области в формат, подходящий для хранения, и наоборот. Сопоставитель данных может включать такие методы, как fetch(), save() и Remove() для выполнения основных операций с объектами домена.

Сервисный уровень

Сервис Уровень находится между контроллером и преобразователем данных, обеспечивая более сложную бизнес-логику и потенциально обрабатывая проверку и сложные запросы. В приведенном примере метод уровня сервиса, такой как getByAuthorAndPublisher(), может анализировать конкретные условия и выполнять более индивидуальный запрос к сопоставителю данных.

Обработка условий

Там Вот два основных подхода к обработке условий в сложных запросах:

  • Сопоставитель данных с несколькими условиями: Метод get() преобразователя данных можно расширить для обработки нескольких условий, позволяя уровню обслуживания передавать набор фильтров.
  • Разбор уровня обслуживания: Уровень обслуживания может обрабатывать анализ условий и сгенерируйте конкретный запрос, который выполняет преобразователь данных.

Аргументы для средства сопоставления данных с несколькими Условия

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

Аргументы для анализа сервисного уровня

  • Сохраняет интерфейс преобразователя данных простым и универсальным.
  • Допускает более сложные задачи и различные условия, которые должны обрабатываться уровнем обслуживания.
  • Облегчает применение правил предметной области и бизнес-логики к извлечение данных.

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

Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3