make it simple
article thumbnail
[DDD] 도메인 주도 개발 시작하기 CH_7. 도메인 서비스
책/도메인 주도 개발 2023. 3. 19. 09:40

애매한 도메인 로직의 문제점 앞 챕터에서 말한것처럼 좋은 도메인 주도 개발이란 애그리거트에 해당 도메인 로직을 구현하는게 좋다라고 설명을 했다. 하지만, 도메인 영역의 코드를 작성하다 보면, 한 애그리거트로 기능을 구현을 할 수 없을 때가 있다. 결제 금액 계산 로직을 통해 알아보자. 상품 애그리거트: 구매하는 상품의 가격이 필요하다. 또한 배송비가 추가되기도 한다. 주문 애그리거트: 상품별로 구매 개수가 필요하다. 할인 쿠폰 애그리거트: 쿠폰별로 지정한 할인 금액이나 비율에 따라 주문 총 금액을 할인한다. 또한 쿠폰 조건에 따라 중복/ 지정한 카테고리 상품에만 사용 등 과 같은 제약조건이 있을 수 있다. 회원 애그리거트: 회원 등급에 따른 추가 할인이 가능하다. 위와 같이 애그리거트가 나눠져 있다면 실..

article thumbnail
[JAVA] 프로그래머스: 편지

https://school.programmers.co.kr/learn/courses/30/lessons/120898 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr public int solution(String message) { return message.trim().length() * 2; }

article thumbnail
[JAVA] 프로그래머스: 가장 큰 수 찾기

https://school.programmers.co.kr/learn/courses/30/lessons/120899 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr public int[] solution(int[] array){ int max = 0; int index = 0; for(int i=0;i max){ max = array[i]; index = i; } } return new int[]{max,index}; }

article thumbnail
[JAVA] 프로그래머스: 문자열 계산하기

https://school.programmers.co.kr/learn/courses/30/lessons/120902 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr public int solution(String my_string) { int answer = 0; String[] arr = my_string.split(" "); answer = Integer.parseInt(arr[0]); for(int i = 1; i < arr.length; i++){ if(i%2!=0){ if(arr[i].equals("+")){ answer += Integer.par..

article thumbnail
[JAVA] 프로그래머스: 배열의 유사도

https://school.programmers.co.kr/learn/courses/30/lessons/120903 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr public int solution(String[] s1, String[] s2){ int answer = 0; for(int i=0;i