Swift enum을 이용해서 사소하게 코드를 개선해보자
Enum의 정의를 공식문서에서 살펴보면
”관련된 값의 그룹을 위한 일반 타입을 정의하고 코드에서 타입-세이프 방법으로 값을 동작하게 합니다.” 라고 설명하는데 너무 어렵다잉.. 한번 알아보자
쉽게 말해서 Enum은 같은 주제로 연관된 데이터들을 멤버로 구성하여 나타내는 자료형이라고 보면 된다. 예시를 들어보자. 솝트 지원 시절 어디 지원하지를 고민했더 희재짱은 사람들한테 어디 파트를 지원할건지 물어보게 된다..
var user1: String = "iOS"
var user2: String = "기획"
var user3: String = "안드"
var user4: String = "아이오에스"
var user5: String = "서버"
var user6: String = "안드로이드"
var user7: String = "서벌"
근데 위에 코드를 보자면 user1&user4, user3&user6는 같은 파튼데 다른 이름으로 선언하고 있고, user7번은 오타까지 나게 되었다. 우리는 이런 상황에서 enum을 활용해서 공통된 주제에 대해서 이미 “정해놓은 입력값”만 선택해서 받을 수 있게 만들 수 있다. 즉 열거형을 사용할 경우, 코드 가독성도 좋아지고, 오타낼 일도 줄여주니 안정성도 향상된다는 것이다!
enum 키워드를 사용해서 열거형의 이름을 정의하고, case 키워드를 통해 각각의 항목을 정의하면 된다.
enum Sopt {
case plan
case design
case aos
case ios
case web
case server
}