«domain-driven-design» 태그된 질문

도메인 기반 디자인 (DDD)은 구현을 진화하는 모델에 연결하여 복잡한 요구에 맞는 소프트웨어를 개발하는 접근 방식입니다.

2
CQRS 명령의 유효성을 정확히 확인하고 도메인 개체로 변환해야합니까?
나는 한 데이터 저장소에 세분화 된 데이터를 보유 할 수있는 유연성을 좋아해 분석에 대한 큰 가능성을 제공하여 비즈니스 가치를 높이고 필요할 때 성능 향상을 위해 비정규 화 된 데이터를 포함하는 읽기에 다른 데이터를 제공하기 때문에 가난한 사람의 CQRS 1 을 꽤 오랫동안 적응해 왔습니다. . 그러나 불행히도 처음부터 나는이 유형의 …

2
도메인 기반 디자인-엔터티 문제의 외부 종속성
Domain-Driven-Design을 시작하고 싶지만 시작하기 전에 해결하고 싶은 몇 가지 문제가 있습니다. :) 그룹과 사용자가 있고 사용자가 그룹에 가입하려고 할 때 groupsService.AddUserToGroup(group, user)메소드를 호출한다고 가정 해 봅시다 . DDD에서해야 할 일은 group.JoinUser(user)꽤 좋아 보인다. 사용자를 추가하기위한 유효성 검사 규칙이 있거나 사용자가 그룹에 추가 될 때 일부 외부 작업을 시작해야하는 경우 문제가 …

5
ORM을 통해 리치 도메인 모델을 만들 수 있습니까?
약 8 년 동안 대부분의 프로젝트에서 Hibernate를 사용한 후, 나는 사용을 권장하지 않고 저장 프로 시저를 통해서만 응용 프로그램이 DB와 ​​상호 작용하기를 원하는 회사에 착륙했습니다. 몇 주 동안이 작업을 수행 한 후, 구축하려는 애플리케이션의 리치 도메인 모델을 만들 수 없었으며 애플리케이션은 (끔찍한) 트랜잭션 스크립트처럼 보입니다. 내가 찾은 문제 중 일부는 …

3
DDD 애플리케이션 서비스와 REST API의 개념 불일치
복잡한 비즈니스 도메인과 REST API를 지원 해야하는 응용 프로그램 (REST가 아니라 리소스 지향)을 설계하려고합니다. 리소스 모델 방식으로 도메인 모델을 노출시키는 방법을 찾는 데 어려움이 있습니다. DDD에서 도메인 모델의 클라이언트는 절차 적 '응용 프로그램 서비스'계층을 거쳐 엔티티 및 도메인 서비스로 구현 된 모든 비즈니스 기능에 액세스해야합니다. 예를 들어 User 엔터티를 업데이트하는 …

3
관계형 데이터베이스 및 반복 개발
민첩한 방법론, 도메인 중심 설계 및 객체 지향 분석 및 설계와 같은 소프트웨어 개발에 대한 많은 접근 방식에서 개발에 반복적 인 접근 방식을 사용하는 것이 좋습니다. 따라서 우리는 프로젝트에서 처음 작업을 시작할 때 도메인 모델을 완성하지 않아야합니다. 대신 시간이 지남에 따라 시간이 지남에 따라 문제 영역을 더 깊이 이해하기 때문에 …

2
빈혈 도메인 모델 및 도메인 서비스 주입
빈혈 도메인 모델은 마틴 파울러 도메인 중심의 디자인에서 안티 패턴으로 설명되어 있습니다. 도메인 모델에 대한 비즈니스 로직을 갖기 위해 종종 도메인 서비스가 사용됩니다. 그러나 도메인 서비스에 도메인 서비스를 주입하는 것은 Vaughn Vernon에 의해 해로운 것으로 간주됩니다 ( "도메인 기반 디자인 구현, 페이지 387"참조). 내 의견으로는, 그 의견은 모순입니다, 이것이 사실입니까? …

4
지속성은 순수한 기능 언어에 어떻게 맞습니까?
지속성을 처리하기 위해 명령 처리기를 사용하는 패턴은 IO 관련 코드를 가능한 한 얇게 만드는 순수 기능 언어에 어떻게 맞습니까? 객체 지향 언어로 도메인 기반 디자인을 구현할 때는 명령 / 핸들러 패턴 을 사용하여 상태 변경을 실행 하는 것이 일반적 입니다. 이 디자인에서 명령 처리기 는 도메인 개체 위에 위치하며 리포지토리 …

8
불변 개체와 DDD가 함께 사용됩니까?
DDD를 사용하는 시스템 (ORM을 사용하는 모든 시스템)을 고려하십시오. 거의 모든 사용 사례에서 현실적으로 모든 시스템의 요점은 해당 도메인 객체를 조작하는 것입니다. 그렇지 않으면 실제 효과 나 목적이 없습니다. 변경 불가능한 객체를 수정하면 객체가 지속 된 후 새 레코드를 생성하여 데이터 소스에 큰 팽창을 일으 킵니다 (수정 후 이전 레코드를 삭제하지 …

3
명령에서 유효성 검사 후 오류를 처리하는 방법 (DDD + CQRS)
예를 들어 등록 양식을 제출할 때 Domain Model( WriteModelin CQRS)에 유효한 상태 (예 : 이메일 주소 구문, 연령 등) 가 있는지 확인해야합니다 . 그런 다음을 만들어로 Command보냅니다 Command Bus. 나는 명령이 아무것도 반환해서는 안된다는 것을 이해합니다. 그렇다면 오류를 Command Bus어떻게 처리 합니까? (예를 들어, 사용자가 1 초 전에 등록한 경우 …

3
MVVM, DDD 및 WPF 계층 응용 프로그램 프로젝트 구조 지침
VS에서 응용 프로그램 구조를 설정하려고하는데 합리적인 수준으로 "시도"하고 나중에 증명하고 싶습니다. 이 응용 프로그램은 규칙을 따르지 않은 이전 Winform 앱을 WPF로 다시 작성합니다. 레이어, 계층, 약어 등이 없습니다. 상당히 게으른 엔터프라이즈 응용 프로그램입니다. Linq To SQL을 DB로 사용하고 항상 MS SQL 일 가능성이 높습니다. 또한 기존 기술이 설정되어 있습니다. MVVM과 …

2
DDD-Lite는 의존성 주입을위한 패턴 언어입니까?
나는 7 시 20 분에 DDD-Lite라고 불리는 것을 언급하면서 DDD 프로젝트가 실패한 7 가지 이유에 대해 Greg Young의 이야기를 우연히 발견 했습니다. 요약하면, 그는 기본적으로 DDD를 DDD와 관련된 다른 작업을 수행하지 않고 패턴 언어 (엔터티, 리포지토리, 가치 객체, 서비스 등)로 사용한다고 말합니다. 그는 .Net의 도메인 모델 중 60 % 이상이 …

5
서비스가 SOA에서 데이터베이스를 공유하는 것은 나쁜 습관입니까?
나는 최근 Hohpe와 Woolf의 엔터프라이즈 통합 패턴, SOA에 대한 Thomas Erl의 저서 중 일부를 읽고 Udi Dahan et al.의 다양한 비디오와 팟 캐스트를보고 있습니다. CQRS 및 이벤트 구동 시스템. 작업장의 시스템은 높은 커플 링으로 인해 어려움을 겪습니다. 각 시스템에는 이론적으로 자체 데이터베이스가 있지만 시스템 간에는 많은 조인이 있습니다. 실제로 이것은 …

3
DDD 및 CRQS를 사용할 때 명령 당 정확히 하나의 이벤트 여야합니까?
구성에 대한 규칙을 사용하여 ddd 응용 프로그램을 디자인하는 방법을 찾고 있습니다. 집계 "클라이언트"에 "FillProfile"로 정의 된 명령이 있다고 가정하십시오. 논리적으로 "ProfileFilled"이벤트가 발생합니다. 명령이 이벤트 이상을 발생 시키거나 일부 논리에 따라 명령이 다른 이벤트를 발생시키는 경우가 있습니까? 또는 이것은 항상 1-1 관계입니까 (1 명령은 항상 없음 또는 주어진 유형의 단일 이벤트를 …

2
DDD 경계 컨텍스트 및 도메인?
나는 10의 데이터베이스 테이블 (집계, 엔터티 / 값 객체)으로 DDD를 적용하는 비교적 복잡한 응용 프로그램에서 일하고 있습니다. 이 시점에서 기본적으로 DDD-Lite 인 것으로 보이며 응용 프로그램 / 도메인 서비스, 도메인 모델 (엔티티, 값 개체) 및 리포지토리가 있음을 의미합니다. 나는 DDD 구현 책을 집어 들었고 그가 언급 한 첫 번째 것은 …

1
도메인 기반 설계는 그렇게 복잡한 도메인이 아닌 경우 유용하고 생산적입니까?
작업중인 잠재적 인 프로젝트를 평가할 때 객체 모델에 도메인 기반 설계 접근 방식을 사용하는 것이 유리할 수 있다고 제안했습니다. 프로젝트에 지나치게 복잡한 도메인이 없으므로 동료가이 문제를 던졌습니다. DDD는 복잡한 도메인 모델이있는 경우에 유리한 것으로 알려져있다. 내가 잃어버린 것은 도메인의 복잡성을 어떻게 정의합니까? 도메인 모델의 집계 루트 수로 정의 할 수 …

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.