Swift 5.7 부터 옵셔널 unwrapping이 좀 간략화 되었고, 클로저에 타입 명시를 하지 않아도 되게 바뀌었습니다.
특히 클로저에 타입 명시하는 부분은 자주 빠트리게 되는 부분이었는데 개선되어 개발이 조금 더 수월해졌습니다.
5.7 이전
if let name = name {
print("Hello, \(name)!")
}
if let unwrappedName = name {
print("Hello, \(unwrappedName)!")
}
5.7 이후
var name: String? = "Linda"
if let name {
print("Hello, \(name)!")
}
5.7 이전
let oldResults = scores.map { score -> String in
if score >= 85 {
return "\(score)%: Pass"
} else {
return "\(score)%: Fail"
}
}
5.7 이후
let scores = [100, 80, 85]
let results = scores.map { score in
if score >= 85 {
return "\(score)%: Pass"
} else {
return "\(score)%: Fail"
}
}
이 외 더 많은 변경 사항은 아래 링크에서 확인하실 수 있습니다.
https://www.hackingwithswift.com/articles/249/whats-new-in-swift-5-7