현재 우리 팀은 Enum Type을 사용하고 있다.
하지만 협업하는 다른 팀에서 Enum 구조체를 사용하고 있는데, 우리도 이 방향으로 갈지 아니면 혼용해서 쓸지 고민이다.
일단 Enum Type과 Enum 구조체의 차이점을 알아보자.
enum CoffeeSize {
Small = 'small',
Medium = 'medium',
Large = 'large
}
@Controller('coffee')
export class CoffeeController {
@Get(':size')
orderCoffee(@Param('size') size: CoffeeSize) {
}
}
가독성과 의미부여용으로 주로 사용
enum PaymentStatus {
Pending = 'pending',
Completed = 'completed',
Failed = 'failed'
}
enum OrderStatus {
Processing = 'processing',
Shipped = 'shipped',
Delivered = 'delivered'
}
@Controller('order')
export class OrderController {
@Get(':id/status)
getOrderStatus(@Param('id') id:string) {
}
}
각각 결제 상태와 주문 상태를 '그룹화'하여 나타내는데 사용. 여러 개의 연관된 값들을 그룹화하여 사용할때 유용하다.
일단은 그룹화 해야할 enum 값들이 많다면 enum 구조체를 사용하는게 맞다고 사용하는데, 일원화하기는 쉽지 않아보인다ㅜㅜ
'Backend > NestJS' 카테고리의 다른 글
전화번호 조회시 010-0000-0000 또는 01000000000 둘다 조회 가능하도록 하는 코드 (feat. /-/g) (0) | 2023.08.30 |
---|---|
Logger 설정할때 앞에 이름 붙이고 싶다면? (0) | 2023.08.25 |
NestJS의 main.ts를 파헤쳐보자 (0) | 2023.08.23 |
Cannot GET /v1/party-member/2 에러해결 (0) | 2023.08.18 |
Nestjs 프로젝트 생성하며 알게된점 (package.json 내부의 모듈역할, dependencies 그리고 devDependencies) (0) | 2023.08.18 |