Categories
블로그

도메인 주도설계 – 값객체

도메인 주도설계 이것은 내가 철저한 입문서를 읽은 후 따라한 내용을 요약한 것입니다.

먼저 값 객체가 나오는데, 말 그대로 쓰였다고 할 수 있습니다.

그러나 사용하는 것과의 차이점은 속성만 있고 외에는 동작을 구현하지 않는다는 점입니다.

값 객체는 행동도 포함해야 한다고 말합니다.

예를 들어 내가 주로 다룬 분석기 장치를 제어하는 프로그램을 가져오겠습니다.

제가 임시로 만든 사용되는 완전히 유사하며 속성과 있습니다.

이와 같은 사용하면 일반적인 할당 방식으로 속성을 설정할 수 있다는 장점이 있습니다.

즉, 가독성 면에서 장점이 있다.

아 물론 이렇게 하면 값 를 설정하는 방법도 달라지겠죠.

어쨌든 만드는 방법은 없습니다

나는 이것을 표현하기 위해 두 가지 예를 들었다.

하지만 2개의 자세히 보면 값가 분석기 태그에 251입력됩니다.

251은 사이트 번호, 약어, 1은 사이트 및 1번째 분석기입니다.

요약하자면 속성에 설정한 값에 여러 의미가 있음을 알 수 있습니다.

앞으로 각 의미에 대해 다른 작업을 살펴봐야 하는 경우가 있다고 가정해 보겠습니다.

그렇기 때문에 가능많은 대화를 해야 합니다.

이것이 바로 당신이 구역을 아는 이유이며 가능많은 대화를 해야 하는 이유입니다.

그러나 나중에 알게 되면 수정해야 합니다.

처음에 만든 변경해야 한다면 어떤 느낌이 듭니까? 쓰여진 곳을 모두 살펴봐야 하는 상황에 직면할 수 있습니다

그럼, 먼저 도메인에 대해 충분히 논의했고 값의 의미로 사용성에 대해 251정도를 파악하고 구현해 보겠습니다.

위와 같이 3개의 클래스를 더 만들었습니다.

이것도 일종의 이 코드를 사용합시다.

사용은 오른쪽과 같이 작성됩니다.

하지만 파이썬의 특성상 객체로 사이트 하우스 분석기가 생성되지 않도록 하는 방법을 사용하는 것이 더 편리할 수 있습니다.

사실 데이터 클래스로 하는 것이 더 편하고, 감히 코드에서 속성을 빼서 보여주긴 했지만 이렇게 빼지 않는 것이 옳다.

즉, 전혀 제공하지 않는 것을 고려할 수 있습니다.

그러면 값객체 내부에 기본 동작을 제공하기 쉽기 때문에 왜 이렇게 했을까요? 일종의 수술입니다.

비교 방법 추가하고 값 객체가 내부에서 비교 작업을 처리하도록 했습니다

실제 사용시에는 외부에서 비교만 하면, 현장번호가 같은지, 한개라도 다른지 바로 확인이 가능합니다.

또한 조건문을 추가하여 사이트 길이는 3~5 사이여야 합니다.

동일한 제약 조건이 값 객체 자체에서 정의될 수 있습니다.

그렇게 하면 규칙이 값 객체를 생성하게 되어 많은 이점이 있습니다.