파비의 매일매일 공부기록

파이썬으로 살펴보는 아키텍처 패턴 - 1장 #3 본문

Study/Python

파이썬으로 살펴보는 아키텍처 패턴 - 1장 #3

fabichoi 2021. 10. 1. 23:30

1.4 모든 것을 객체로 만들 필요는 없다: 도메인 서비스 함수
- OOP는 모든 것이 객체라고 했는데, DDD는 아닌 듯하다.
- 도메인 서비스 연산 : 엔티티나 값 객체로 자연스럽게 표현할 수 없는 개념.
- next를 사용하는 코드가 나옴. 최근에 봤던 코드에서 이게 뭐지..? 했었는데 오늘 딱 보게 됐음.
- sorted 구현 시 primitive type이 아니면 __gt__ 를 구현해야 함.
- 예외로 도메인 개념을 표현하는 방법에 대해 다룸.

도메인 모델링 정리
- 도메인 모델링 : 비즈니스와 가장 가까운 부분. 변화가 생길 가능성이 가장 높음. 도메인 모델링을 이해하고 변경하기 쉽게 만들 것.
- 엔티티와 값 객체 구분 : 값 객체는 그 내부의 속성들에 의해 정의. 불변 타입을 사용해 값 객체를 구현하는 것을 추천. 엔티티에는 시간에 따라 변하는 속성이 포함될 수 있고 이런 속성이 바뀌어도 여전히 똑같은 엔티티로 남음. 어떤 요소가 엔티티를 유일하게 식별하는지 정의하는 것이 중요. (보통 이름이나 참조 번호 등을 사용)
- 모든 것을 객체로 만들 필요가 없음 : 코드에서 동사에 해당하는 부분은 함수를 사용하는 것을 추천.
- 가장 좋은(적합한) 설계 원칙을 적용 : 'SOLID 원칙'이나 'has-a와 is-a의 관계', '상속보다는 구성을 사용하라' 등의 좋은 설계법을 다시 살펴볼 것

반응형
Comments