상수란?
상수는 프로그램 실행 중 변경되지 않는 고정된 값을 나타냅니다.
상수 정의
Golang에서 상수는 const 키워드를 사용하여 정의합니다.
const Pi = 3.14159
const MaxUsers = 100
const Greeting = "Hello, World!"
여러 상수를 그룹으로 정의할 수도 있습니다
const (
StatusOK = 200
StatusNotFound = 404
StatusInternalServerError = 500
)
타입이 있는 상수와 없는 상수
1. 타입이 없는 상수
const MaxValue = 100
2. 타입이 있는 상수
const MaxValue int = 10
타입이 없는 상수는 더 유연하게 사용할 수 있으며, 필요에 따라 암시적으로 타입 변환이 가능합니다.
iota를 사용한 열거형 상수
iota는 연속된 정수 상수를 생성하는 데 사용되는 특별한 식별자입니다. const 블록 내에서 iota는 0부터 시작하여 각 라인마다 1씩 증가합니다.
const (
Sunday = iota // 0
Monday // 1
Tuesday // 2
Wednesday // 3
Thursday // 4
Friday // 5
Saturday // 6
)
정리
- 가독성 향상: 매직 넘버 대신 의미 있는 이름을 사용할 수 있습니다.
- 유지보수성: 값을 한 곳에서 관리할 수 있어 변경이 용이합니다.
- 타입 안전성: 특히 타입이 있는 상수를 사용할 때 타입 관련 오류를 줄일 수 있습니다.
- 성능: 컴파일 시간에 평가되므로 런타임 오버헤드가 없습니다.
'프로그래밍 > Golang' 카테고리의 다른 글
Golang func 와 method (0) | 2024.07.22 |
---|---|
Golang type(타입) 키워드 탐구 : Named Type과 Type Alias의 차이와 활용 (0) | 2024.07.21 |
Golang 변수와 Scope(스코프) 이해하기 (0) | 2024.07.19 |
Golang Module(모듈) 발행 가이드: GitHub에 패키지 배포 (0) | 2024.07.18 |
Golang Package(패키지) 종속성 관리와 모듈화 (0) | 2024.07.17 |