"빈약한 도메인 모델"의 두 판 사이의 차이

 
(같은 사용자의 중간 판 2개는 보이지 않습니다)
39번째 줄: 39번째 줄:


==같이 보기==
==같이 보기==
* [[DDD]]
{{z컬럼3|
* [[POJO]]
* [[POJO]]
* [[값 객체]]
* [[값 객체]]
* [[GRASP]]
* [[도메인 모델]]
* [[도메인 모델]]
* [[비즈니스 로직]]
* [[GRASP 정보 전문가]]
* [[도메인 주도 설계]](DDD)
}}


==참고==
==참고==

2022년 6월 16일 (목) 11:35 기준 최신판

1 개요[ | ]

anemic domain model
빈약한 도메인 모델
  • 도메인 모델에 비즈니스적으로 유의미한 내용을 갖고 있지 않은 객체들
  • 비즈니스 로직(유효성 검사, 연산, 비즈니스 규칙 등)이 거의 없는 도메인 객체들이 있는 도메인 모델
  • 예: getter/setter만 있는 객체
  • 풍성한(rich) 도메인 모델의 반대 개념

2 예시[ | ]

빈약함
class Box {
    public int Height { get; set; }
    public int Width { get; set; }
}
빈약하지 않음
class Box {
    public int Height { get; private set; }
    public int Width { get; private set; }

    public Box(int height, int width) {
        if (height <= 0) {
            throw new ArgumentOutOfRangeException(nameof(height));
        }
        if (width <= 0) {
            throw new ArgumentOutOfRangeException(nameof(width));
        }
        Height = height;
        Width = width;
    }
    public int area() {
       return Height * Width;
    }
}

3 같이 보기[ | ]

4 참고[ | ]

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}