[Swift] Type Aliases(νμ λ³μΉ)
π 1 . TypeAliases (νμ λ³μΉ)
TypeAliasesλ μ΄λ―Έ μ‘΄μ¬νλ νμ (ν΄λμ€, ꡬ쑰체, μ΄κ±°ν, ν¨μ, νν λ±)μ λ€λ₯Έ μ΄λ¦μΌλ‘ μ μνλ€.
μ΄λ₯Ό ν΅ν΄ μ½λμ κ°λ μ±μ λμ΄κ³ , νΉμ νμ μ μλ―Έλ₯Ό λͺ ννκ² ννν μ μλ€.
typealias ν€μλλ₯Ό μ¬μ©νμ¬ μ μνλ€.
π 2. κΈ°λ³Έ λ¬Έλ²
π 3. μ¬μ© μμ
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 νΈμΆ μ²λ¦¬
}