[Swift] 클로저 표현식

chaaansooo·2022년 3월 8일
0

Swift 문법

목록 보기
4/4
post-thumbnail

클로저 표현식

클로저 표현식(closure expression)이란

독립적인 코드블럭이다...
자세히 설명을 하면

let printHello = {print("Hello")}
printHello()

다음과 같이 클로저 표현식을 선언하고 상수를 만든 다음 호출을 할 수 있다.

또한 클로저 표현식이 매개변수를 받아 결괏값을 반환하도록 구성할 수도 있는데

let callName = { (_ name: String) -> String in
	return "hello \(name)"
}
let a = callName("jay")

다음과 같이 클로저 표현식을 구성할 수도 있다.

함수와의 차이점

바로 위의 예시를 보게 되면 클로저 표현식과 함수가 같다고 생각할 수도 있다.
하지만 클로저 표현식은
1. 이름을 갖지 않는다.
2. 매개변수와 반환 타입이 괄호 안에 포함된다.
3. 클로저 표현식의 시작을 알려주기 위해 in을 사용한다.

정리를 해보자면 함수는 이름이 있는 클로저 표현식이다.

completion handler 사용

ios 개발을 하다보면 completion: 이런 형식을 굉장히 많이 만나게 된다.
시스템이 어플리케이션에게 작업이 완료된 것을 알리고 메서트를 호출할 때 선언했던 완료 핸들러를 호출하여 결과를 반환한다.

profile
악으로 깡으로 버티기

0개의 댓글