괴발개발 성장기

Study/개념공부

[개념] enum이 무엇일까?

지니유 2022. 7. 22. 21:13
반응형

# 배경

  • 상태 값처럼 정해진 값을 사용할 때 Enum을 만들어 사용했다.

# Enum

  • 상수의 집합을 정의할 때 사용되는 타입
  • 변하지 않는 값(상수)을 한 곳에 놓고 여러 군데에서 사용하는 것이다.
  • 장점 : 로직 수정 시 여기만 수정하면 된다 => 리팩터링 할 때 좋다.

# 나의 사용 예시

  • 기부자 타입할 때 사용한다.  ex) INDIVIDUAL, BUSINESS
  • 사업자인 경우도 타입이 있다. ex) CORPORATE, PERSONAL
  • 기부영수증 상태, 문서 종류, 국가 타입 등에 사용했다

# 예시 

type DonorTypeEnum int

const (
	INDIVIDUAL DonorTypeEnum = 0
	BUSINESS   DonorTypeEnum = 1
)

var donorTypeEnum = [...]string{"INDIVIDUAL", "BUSINESS"}

func (s DonorTypeEnum) String() string {
	switch s {
	case 0, 1:
		return donorTypeEnum[s]
	default:
		return fmt.Sprintf("%d", s)
	}
}

 

반응형