Вопросы с тегом «domain-driven-design»

29
Является ли хорошей практикой использование объектов-сущностей в качестве объектов передачи данных?

Мне интересно, потому что, если это так, почему Entity Framework не предлагает логику для создания нового объекта с такими же свойствами для передачи данных между слоями? Я использую объекты сущностей, которые я генерирую с помощью структуры...

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

Пожалуйста, смотрите код ниже; Он проверяет, имеет ли право лицо с Полом женщины на предложение1: [Fact] public void ReturnsFalseWhenGivenAPersonWithAGenderOfFemale() { var personId = Guid.NewGuid(); var gender = "F"; var person = new Person(personId, gender); var id = Guid.NewGuid(); var offer1 =...

27
DDD - обрабатывает ли хранилище агрегатного корня сохранение агрегатов?

Я использую DDD-подобный подход для нового модуля существующего приложения; это не 100% DDD из-за архитектуры, но я пытаюсь использовать некоторые концепции DDD. У меня есть ограниченный контекст (я думаю, что это правильный термин - я все еще изучаю DDD), состоящий из двух сущностей: Conversationи...

27
Как выбрать между использованием события домена или разрешением уровня приложения управлять всем

Я делаю свои первые шаги в дизайне, управляемом доменом, купил синюю книгу и все остальное, и я вижу три способа реализации определенного решения. Для записи: я не использую CQRS или Event Sourcing. Допустим, запрос пользователя поступает на уровень обслуживания приложений. Бизнес-логика для этого...

26
В DDD это логика приложения проверки или логика домена?

Предположим, что мы моделируем форму с использованием DDD; Форма может иметь определенные бизнес-правила, связанные с ней - возможно, вам нужно будет указать доход, если вы не студент, и вам необходимо перечислить своих детей, если вы укажете, что вы состоите в браке. И если вы указали страну, то у...

24
Что такое доменно-ориентированная разработка в практическом плане? [закрыто]

Закрыто . Этот вопрос должен быть более сфокусированным . В настоящее время не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы он был сосредоточен только на одной проблеме, отредактировав этот пост . Закрыто 3 года назад . Я слышал о разработке, управляемой доменом, от...

24
Как REST API подходит для домена, основанного на командах / действиях?

В этой статье автор утверждает, что Иногда требуется представить в API операцию, которая по своей природе не является RESTful. и это Если API имеет слишком много действий, то это указывает на то, что он был разработан с точки зрения RPC, а не с использованием принципов RESTful, или что данный API,...

23
Модульное тестирование в мире «без сеттера»

Я не считаю себя экспертом DDD, но, как архитектор решений, стараюсь по возможности применять лучшие практики. Я знаю, что вокруг «за» и «против» нет (публичного) «стиля» сеттера в DDD, много споров, и я вижу обе стороны аргумента. Моя проблема в том, что я работаю в команде с широким разнообразием...

23
Domain-Driven-Design - внешние зависимости в проблеме сущностей

Я хотел бы начать Domain-Driven-Design, но есть несколько проблем, которые я хотел бы решить перед началом :) Давайте представим, что у меня есть Группы и Пользователи, и когда пользователь хочет присоединиться к группе, я вызываю groupsService.AddUserToGroup(group, user)метод. В DDD я должен...

23
Лучшие практики для сериализации DDD агрегатов

Согласно DDD логика домена не должна быть загрязнена техническими проблемами, такими как сериализация, объектно-реляционное отображение и т. Д. Так как же сериализовать или отобразить состояние агрегатов, не раскрывая его публично через геттеры и сеттеры? Я видел множество примеров, например, для...

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

Недавно я прочитал множество статей, в которых примитивная одержимость описывается как запах кода. Есть два преимущества избегания примитивной одержимости: Это делает модель предметной области более явной. Например, я могу поговорить с бизнес-аналитиком о почтовом индексе вместо строки, содержащей...

22
Как именно команда CQRS должна быть проверена и преобразована в объект домена?

Я уже довольно давно адаптирую CQRS 1 для бедного человека, потому что мне нравится его гибкость, позволяющая хранить детализированные данные в одном хранилище данных, предоставляя большие возможности для анализа и, таким образом, увеличивая ценность для бизнеса и, при необходимости, другую для...

21
Позволяют ли ORM создавать модели богатых доменов?

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

20
Концептуальное несоответствие между DDD Application Services и REST API

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

19
Анемичные доменные модели и внедрение доменных сервисов

Модель анемичного домена описана Мартином Фаулером как анти-шаблон в дизайне, управляемом доменом. Чтобы иметь бизнес-логику в доменных моделях, часто используются доменные службы. Но внедрение доменных служб в доменные модели считается вредным для Вона Вернона (см. «Внедрение доменного дизайна»,...

19
Реляционные базы данных и итеративная разработка

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

18
Как обрабатывать ошибки после проверки в команде (DDD + CQRS)

Например, когда вы отправляете форму регистрации, вы должны подтвердить Domain Model( WriteModelв CQRS), что она находится в действительном состоянии (например, синтаксис адреса электронной почты, возраст и т. Д.). Затем вы создаете Commandи отправляете его Command Bus. Я понимаю, что Команды не...

18
Как постоянство вписывается в чисто функциональный язык?

Как шаблон использования обработчиков команд для работы с постоянством вписывается в чисто функциональный язык, где мы хотим сделать код, связанный с IO, как можно более тонким? При реализации доменно-управляемого проектирования на объектно-ориентированном языке обычно используется шаблон Command /...

18
Неизменные объекты и DDD идут вместе?

Рассмотрим систему, которая использует DDD (также: любую систему, которая использует ORM). Смысл любой системы реалистично, почти в каждом случае использования, состоит в том, чтобы манипулировать этими объектами домена. В противном случае нет никакого реального эффекта или цели. Изменение...

17
Руководство по структуре проекта многоуровневого приложения MVVM, DDD и WPF

Я пытаюсь настроить структуру своего приложения в VS, и я хочу "попробовать" и в будущем доказать это на разумном уровне. Это приложение будет переписано в WPF старого приложения Winform, которое не соблюдало никаких соглашений. Нет слоев, ярусов, сокращений и т. Д. Это довольно простое...