typeAlias

이원희·2021년 1월 18일
0

 🐧 Swift

목록 보기
19/32
post-thumbnail

오늘은 typeAlias에 대해서 알아보자.

typeAlias?

공식 문서를 먼저 살펴보자.


(출처: https://developer.apple.com/documentation/coreservices/typealias)

엄청 간단하게 나와있다.

Alias별명이라고 한다.
그렇다면 typeAlias타입 별명이라고 할 수 있을거 같다.


사용법

Swift를 공부할때 처음 typeAlias를 접했다.
근데 이게 굳이 필요하나..? 라는 생각이 컸다.

우선 어떤 식으로 사용할 수 있는지 가장 기초적이고 쉬운 예제를 한 번 봐보자.

typealias name = String
let personName: name = "wonhee"
print(personName)
// 출력: wonhee

String타입에 name이라는 별명을 지어줬다.
personName은 name이라는 타입을 갖는다.
nameString타입의 별명이므로 personName은 String타입을 가질 수 있다.


사용법 2

프로젝트를 진행하면서 typealias에 관한 아래의 코드리뷰를 받은 적 있다.

레시피 인스턴스 에게 레시피를 요청하니 딕셔너리 타입이 반환되는 형태인 것 같아요. 혹시 typealias 에 대해서 아시나요?

typealias JuiceRecipe = [FruitsType : Int]

이런 형태의 코드도 가능할 수 있습니다.

FruitsType은 아래와 같이 내가 선언한 타입이다.

enum FruitsType {
    case banana
    case apple
}

리뷰 받은대로 내가 선언한 타입도 typealias로 선언할 수 있다.


참고

내가 받았던건 아니지만 왜 Double타입이 아닌 TimeInterval을 썼냐는 리뷰를 받은적 있다.
이전까지는 TimeInterval에 대해서 깊게 생각해보지 않았는데 이번 기회에 다시 봐봤다.

공식 문서를 확인해봤다.


(출처: https://developer.apple.com/documentation/foundation/timeinterval)

TimeIntervaltypeAlias였다...❗️


마무리

오늘은 typeAlias에 대해서 알아봤다.
처음 typeAlias에 대해서 봤을때는 굳이 이렇게 써야하나? 싶었는데
여러 군데에서 접하다보니 잘 쓰면 좀 더 명확하게 타입을 표현할 수 있을거 같다.
그럼 이만👋

0개의 댓글