본문 바로가기
반응형

IT Tech/Application38

DDD 바운디드 컨텍스트 기반 마이크로서비스 도출 서비스가 소유권을 가진 데이터를 독립적으로 식별하는 것이 중요 서비스의 기능에 의해서만 접근 가능(캡슐화)하도록 데이터를 식별해야 한다. 하나의 통합된 데이터가 여러 서비스에 사용된다면 데이터에 의해서 서비스의 독립성이 홰손된다. 즉 데이터를 기능과 분리해서 식별하지 않고 문제 영역인 하위 도메인마다 별도의 도메인 모델(바운디드 컨텍스트)을 정의해야 한다. * 바운디드 컨텍스트 : 다른 켄텍스트와 구별되는 경계 바운디드 컨텍스트의 특징 : 이쪽 도메인에서 사용되는 언어의 개염과 저쪽 도메인에서 사용되는 언어의 개념이 상이한 경계가 도메인의 경계, 즉 바운디드 컨텍스트임 도메인의 분류 - 핵심도메인 - 서브도메인 - 일반도메인 2022. 2. 4.
[java] Comparable을 이용해 Pair 클래스 정렬하기 입력된 인덱스 값과 정렬된 값을 함께 저장하는 방법 import java.util.*; class Pair implements Comparable{ int index; int number; public Pair(int index, int number) { // 생성자 super(); this.index = index; this.number = number; } // number 기준으로 오름차순 @Override public int compareTo(Pair p) { return Integer.compare(this.num, p.number); } } public class void main(String[] args) { BufferedReader br = new BufferedReader(new Inp.. 2021. 9. 5.
[java] Array(배열) # Array 초기화 - 기본타입(Primitive type)의 배열인 경우 초기값을 가지고 있음 (int = 0) - 참조타입(Reference type)의 배열을 선언했을 경우 배열내 엘리먼트의 초기값이 null임 //크기 할당 & 초기화 없이 배열 참조변수만 선언 int[] arr; int arr[]; // 선언과 동시에 배열 크기 할당 int[] arr = new int[5]; String[] arr = new String[5]; // 기존 배열의 참조 변수에 초기화 할당하기 int[] arr; arr = new int[5]; // Arrays.fill(배열, 초기화 값) Arrays.fill(arr, Integer.MAX_VALUE); // 최대값으로 초기화 // 2차원 배열 초기화 int[][.. 2021. 9. 5.
[java] Array, List(ArrayList, LinkedList) # Array (배열) - 배열의 사이즈를 알 수 있을 때 사용 - 사이즈 변경 불가 import java.util.Arrays; int myArray = new int[6]; # ArrayList - 데이터 사이즈를 알 수 없을 때 사용 - 추가, 삭제가 가능 ; add(), remove() import java.util.ArrayList; public class Main { ArrayList myArrayList = new ArrayList(); myArrayList.add(1); myArrayList.add(2); myArrayList.add(3); myArrayList.add(4); myArrayList.add(5); myArrayList.remove(0); for(int i = 0; i < my.. 2021. 9. 4.
[java] Stack, Queue, ArrayDeque # Stack - Last in First Out - 스택은 ArrayList로 구현 Stack st = new Stack(); st.push('10'); st.push('20'); st.push('30'); while(!st.empty()){ System.out.println(st.pop()); } # Queue - First in First Out - 큐는 LinkedList로 구현 Queue q = new LinkedList(); q.offer('10'); q.offer('20'); q.offer('30'); while(!q.isEmpty()){ System.out.println(q.poll()); } - 큐를 ArrayDeque로 구현 Queue q = new ArrayDeque(); q.add(.. 2021. 9. 4.
반응형