개발하면서 API 응답 값으로 Map으로 넘겨주거나 DTO 클래스나, ErrorResponse등 클래스를 넘겨주는 방식으로 사용합니다. 하지만 알기로는 응답 값이든 데이터를 주고받는 데 있어서 대부분 Map 의 사용을 지양하라고 합니다. 왜 그런지 간단하게 알아보겠습니다. Map의 사용을 지양하는 이유가 무엇일까요? Map을 사용할 때의 단점은 다음과 같습니다. 컴파일 에러를 유발할 수 없음 key 또는 value가 null이면 Map의 해당 필드 자체를 key로 가져가지 않음. String 텍스트를 Key로 사용함 가독성이 떨어짐 타입캐스팅 비용이 발생함 불변성을 확보할 수 없음 1. 컴파일 에러를 유발할 수 없음 Map의 Value는 Object 타입이다. 그리고 Object 클래스는 최상위 클래스..
Spring 을 개발하다보면 가끔 VO 혹은 DTO를 사용할 적이 있습니다. 겉보기엔 둘이 같아보이기도 한 둘을 어떠한 목적을 갖고 사용하는지에 대해 알아보려고 합니다. VO (Value Object) 값을 가지는 객체 데이터 불변이어야 하고, 저장된 값을 불러와야하는 경우에 사용합니다. 값이 같다면 동일한 객체 같은 객체인지 판단하기 위해 각 속성들의 값을 비교함 equals() 메서드와 hashcode() 메서드를 오버라이드해서 객체 비교를 구현합니다. 예를 들어, 서울의 지역번호를 저장할 때 서울의 지역번호는 상식적으로 '02' 이며, 이 번호는 변하는 값이 아닌 고정된 값입니다. 그렇기 때문에 VO로 저장하고 Getter로 호출하여 사용합니다. DTO (Data Transfer Object) ..
- Total
- Today
- Yesterday
- SpringBoot
- Spring Boot
- 회고록
- 초보
- .NET
- 알고리즘
- 프로토콜
- aws
- tcp
- 라우팅
- 스위치
- ec2
- Docker
- 삽질
- lambda
- 프로그래머스
- spring
- 계층
- 개발자
- dto
- 3Way Handshake
- 자바
- 네트워크
- 라우터
- osi7계층
- rds
- s3
- java
- 회고
- 개발
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |