TypeAliases๋ ์ด๋ฏธ ์กด์ฌํ๋ ํ์ (ํด๋์ค, ๊ตฌ์กฐ์ฒด, ์ด๊ฑฐํ, ํจ์, ํํ ๋ฑ)์ ๋ค๋ฅธ ์ด๋ฆ์ผ๋ก ์ ์ํ๋ค.
์ด๋ฅผ ํตํด ์ฝ๋์ ๊ฐ๋ ์ฑ์ ๋์ด๊ณ , ํน์ ํ์ ์ ์๋ฏธ๋ฅผ ๋ช ํํ๊ฒ ํํํ ์ ์๋ค.
typealias ํค์๋๋ฅผ ์ฌ์ฉํ์ฌ ์ ์ํ๋ค.
1. ๊ฐ๋ ์ฑ ํฅ์
์ฝ๋์์ ํ์ ์ ์ด๋ฆ์ด ๊ธธ๊ฑฐ๋ ๋ณต์กํ ๋
typealias Point = (x: Int, y: Int)
let orign: Point = (x: 0, y: 0)
2. ๋ณต์กํ ํ์ ๋จ์ํ
์ ๋ค๋ฆญ ํ์ ์ด๋ ํจ์ ํ์ ๊ณผ ๊ฐ์ด ๋ณต์กํ ํ์ ์ ๊ฐ๋จํ ์ด๋ฆ์ผ๋ก ์ ์ํ์ฌ ๊ฐ๋จํ๊ฒ ์ฌ์ฉ
typealias StringDictionary = [String: String]
typealias CompletionHandler = (Bool, Error?) -> Void
func fetchData(completion: CompletionHandler) {
// ...
}
3. ํน์ ์ฌ์ฉ ๋ชฉ์ ์ ๋ฐ๋ผ ์๋ฏธ ๋ถ์ฌ
ํน์ ํ์ ์ ๋ํด ์ฌ์ฉ ๋ชฉ์ ์ ๋ช ํํ๊ฒ ํ๊ธฐ ์ํด ์ฌ์ฉ
typealias Meter = Double
typealias Kilogram = Double
let distance: Meter = 120.5
let weight: Kilogram = 70.3
4. ์ ๋ค๋ฆญ ํ์ ์ถ์ฝ
์ ๋ค๋ฆญ์ ์ฌ์ฉํ๋ ํ์ ์ ๋ํด ๋ ์งง์ ์ด๋ฆ์ผ๋ก ๋ง๋ค ์ ์์
typealias StringResult = Result<String, Error>
func perforTask() -> StringResult {
return .success("์ฑ๊ณต!!")
}
typealias JSON = [String: Any]
typealias NetworkCompletion = (JSON?, Error?) -> Void
func fetchAPI(endpoint: String, completion: NetworkCompletion) {
// API ํธ์ถ ์ฒ๋ฆฌ
}
[Swfit] @unknown default / @frozen enum (0) | 2024.12.04 |
---|---|
[ Swift ] Error Handling (1) | 2024.11.05 |
Alert๊ณผ ๋๊ธฐ/๋น๋๊ธฐ ๊ฐ๋ (0) | 2024.08.29 |
UITextField์ ๋ธ๋ฆฌ๊ฒ์ดํธ ํจํด (0) | 2024.08.28 |
[ Swift ] ํ๋กํ ์ฝ(protocol) (0) | 2024.08.25 |