Запитання з тегом «domain-driven-design»

Дизайн, керований доменом (DDD) - це підхід до розробки програмного забезпечення для складних потреб шляхом підключення реалізації до моделі, що розвивається.

2
DDD - агрегований корінь з великою кількістю дітей
Я виступлю з цим питанням, кажу, що я відносно новий в DDD, тому я можу тут робити деякі принципові помилки! Я працюю над проектом, який включає поняття Рахунки та операції (у фінансовому розумінні). В обліковому записі може бути введено багато транзакцій. Мені здається, що обліковий запис і транзакція є обома …

2
До сховища чи не до сховища
Коли я вперше дізнався про дизайн, керований доменом, мене також ознайомили з сховищем та одиницею роботи, які колись здавались найкращими для крутих дітей, які кидали запити SQL, як печери, проти баз даних. Чим глибше я заглиблювався в цю тему, тим більше я дізнався, що вони, здається, вже не потрібні через …

2
Еквівалент Дизайну, керованого доменом для функціональних мов програмування
Мені дуже подобається ідея дизайну, керованого доменом, однак, коли я навчаюсь Go, мені цікаво, чи існує еквівалент DDD, який спрямований на більш функціональну мову?

1
Чи замінюють ORM POCO місця домену?
Це дещо схоже на це питання, але більш широке. Взагалі, для таких ORM, як EF 4.1, що підтримують POCO, чи має сенс, щоб ваші доменні об'єкти були об'єктами, які зберігаються у вашій базі даних? За старих ORM, таких як EF 4 або Linq-до-SQL, ваші "об'єкти баз даних" були автоматично сформовані …

1
Як застосувати деякі поняття DDD до фактичного коду? Конкретні питання всередині
Я вивчав DDD, і в даний час намагаюся знайти спосіб застосування понять у фактичному коді. Я маю близько 10-річного досвіду роботи з N-рівнем, тому дуже ймовірно, що причина, з якою я боюсь, полягає в тому, що моя ментальна модель занадто поєднана з цим дизайном. Я створив веб-додаток Asp.NET і починаю …

4
Підхід DDD до основних операцій CRUD у складному доменно-орієнтованому застосуванні
Моя компанія переписує нашу веб-програму з нуля. Це велика програма на рівні підприємств зі складною областю у фінансовій галузі. Ми використовуємо ORM (Entity Framework) для збереження. По суті, половина наших додатків зосереджується на зборі необроблених даних від користувача, зберіганні їх, а потім інша половина програми, яка містить більшість фактичної логіки …

3
Чи погана практика для визначення об’єкта API містити сторонні посилання Id як властивості?
Подобається це: Campaign: type: object properties: id: type: string description: "A GUID identifier" referenceId: type: string description: "A consumers identifier they have used to map their own systems logic to this object." name: type: string description: "'Great Campaign 2017' as an example" Я стурбований посиланнямId . Домен системи - це …

4
Як чітко визначити межі обмеженого контексту
Після місяця чи близько місяця читання та дослідження DDD я вирішив розпочати власний проект і створив DDD із цими обмеженими контекстами> Клієнти Продукція Замовлення Рахунки Кожен обмежений контекст містить API відпочинку як презентаційний шар, доменний рівень, стійкий шар. Поки добре, код працює безперебійно, але виходячи з монолітного світу, я все …

2
Чи має бути відомий бізнес-ідентифікатор суб'єкта господарювання представленим типом у DDD / OOP?
На практиці це означає використання користувацького (незмінного) classнад тим stringчи іншим примітивним типом. Приклади: Видавництво: Міжнародний стандартний номер книги. Фінанси: Міжнародний ідентифікаційний номер цінних паперів. Переваги: Може забезпечити формат ідентифікатора. Стає першокласним членом моделі. Недоліки: Додає стійке тертя (наприклад, Entity Framework). Більше коду.

4
Модельні стосунки з DDD (або з сенсом)?
Ось спрощена вимога: Користувач створює Questionдекілька Answers. Questionповинен мати хоча б одну Answer. Уточнення: подумайте Questionі Answerяк у тесті : є одне запитання, але кілька відповідей, де мало хто може бути правильним. Користувач - це актор, який готує цей тест, тому він створює питання та відповіді. Я намагаюся моделювати цей …

2
DDD: Чи можуть непорушні об'єкти також бути сутностями?
Я прочитав незліченну кількість публікацій про відмінності між об'єктами Entity та Value, і, хоча я думаю, що принаймні концептуально я розумію, чим вони відрізняються, виявляється, що в деяких з цих публікацій автори вважають конкретну концепцію домену VO просто тому, що це є незмінним (таким чином, його стан ніколи не зміниться, …

4
Забезпечення транзакційної консистенції з DDD
Я починаю з DDD і розумію, що сукупні корені використовуються для забезпечення транснаціональної узгодженості. Ми не повинні змінювати кілька агрегатів в одній службі додатків. Мені хотілося б знати, як вирішити наступну ситуацію. У мене є сукупний корінь під назвою Продукти. Існує також сукупний корінь під назвою Group. В обох є …

2
Чи повинні ми знущатися над сутностями та цінними об’єктами, коли робимо DDD?
Після прочитання кількох статей про Newable проти контурних об'єктів і як ці поняття відносяться до послуг для DDD, організаціям та об'єктам вартості, я залишився з деякими сумнівами про використання newables в моєму коді , особливо в моїх модульних тестах. Основними кандидатами для нових предметів були об'єкти Entities and Value, тобто, …

3
Презентація VS Прикладний рівень у DDD
У мене виникають проблеми з малюванням чіткої межі між шаром презентації та додатків у дизайні, керованому доменом. Куди повинні йти файли контролерів, представлень, макетів, Javascript та CSS? Це в додатку чи шарі презентації? І якщо вони йдуть всі разом у один і той же шар, що містить інший? Це порожньо?

3
Об'єкти DDD та цінності. Чи є об'єкти цінності, що змінюються, хорошим кандидатом для негр. Root Entity?
Тут невелика проблема Мати сутність з об'єктом значення. Не проблема. Я замінюю ціннісний об'єкт на новий, після чого nhibernate вставляє нове значення та осиротіє старе, а потім видаляє його. Гаразд, це проблема. Застрахована - моя особа в моєму домені. У нього є колекція адрес (об'єктів цінності). Одна з адрес - …

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.