[swift] 클로저 메소드

클로저는 스위프트에서 강력한 도구로 사용됩니다. 클로저를 사용하여 함수 또는 메소드에 동작을 전달할 수 있습니다. 클로저는 코드 중복을 줄이고 함수형 프로그래밍의 장점을 활용할 수 있도록 도와줍니다.

클로저 정의

클로저는 중괄호로 둘러싸인 코드 블록으로, 일급 객체로 다뤄집니다. 이는 함수와 메소드에서 파라미터로 전달하거나, 반환값으로 사용할 수 있음을 의미합니다.

let myClosure = {
    print("This is a closure")
}

위 코드에서 myClosure는 매개변수를 가지지 않고 어떠한 값을 반환하지 않는 클로저를 정의합니다.

클로저 메소드 활용

클로저는 메소드의 인자로 전달될 수 있습니다. 이를 통해 메소드의 동작을 외부에서 지정할 수 있습니다.

func performAction(closure: () -> Void) {
    print("Performing action")
    closure()
}

performAction(closure: {
    print("Action performed")
})

위의 예제에서 performAction 메소드는 클로저를 파라미터로 받아 실행하는 메소드입니다. 클로저는 메소드 내부에서 실행됩니다.

정리

클로저를 사용하여 메소드에 동작을 전달하는 방법에 대해 살펴보았습니다. 클로저를 활용하면 동적으로 동작을 변경하거나 확장할 수 있으며, 코드의 재사용성과 유연성을 향상시킬 수 있습니다.

참고 자료: The Swift Programming Language - Closures