[Swift] escaping과 [weak self]
·
Swift/개념 & 응용
서론 @escaping 키워드가 붙은 클로저를 본 적이 있으실 겁니다. func withEscaping(completion: @escaping () -> Void) { completion() } 가장 대표적인 예는 completionHandler가 있습니다. escaping 클로저는 non-escaping 클로저와 달리 아래 동작이 가능합니다. 파라미터로 전달된 클로저를 외부 변수/상수에 저장 가능 함수가 종료된 뒤 실행 가능 오늘 포스팅에서는 escaping에 대해 자세히 알아봅시다. non-escaping 클로저 escaping 클로저에 대해 자세히 알아보기 전에 non-escaping 클로저에 대해 알아봅시다. @escaping 이 붙지 않은 클로저는 모두 non-escaping 클로저인데요. 무슨..
[Swift] 공식 문서 - 클로저 (Closures)
·
Swift/Swift 가이드
안녕하세요. 개발하는 정주입니다. 오늘은 클로저 (Closures)를 정리해보겠습니다. * 공식 문서 내용을 한 줄 한 줄 읽는 것에 의의를 두었습니다. * 파파고의 힘을 빌려 번역했으며 잘못된 번역이 있다면 댓글로 알려주세요. 새로 배운 점 전역 함수와 중첩 함수가 클로저라는 사실 sorted 메서드가 클로저를 기반으로 동작된다는 사실 클로저의 인자, 반환값 생략할 수 있는 이유가 Swift의 타입 유추라는 점 => 생략 가능하다는 것은 알고 있었지만 이번 포스팅을 통해 이유를 알게 되었다. ">" 연산자 메서드에 문자열별 구현이 되어 있어 sorted()에 클로저 대신 쓸 수 있다는 점 클로저는 참조 타입이라는 점 값이 캡처가 되면 클로저와 인스턴스 사이에 강한 참조 사이클이 생성된다는 점 캡처로 생..
[Swift] Swift 문법 - 클로저(Closure)
·
Swift/개념 & 응용
안녕하세요. 오늘은 Swift의 클로저(Closure)에 대해 알아보도록 하겠습니다. 긴 함수를 독립적으로 선언하면서 짧고 간편하게 사용할 수 있습니다. 바로 시작하겠습니다. 참고 자료 해당 포스팅은 Smile Han님의 유튜브 영상을 참고하며 작성하였습니다. https://www.youtube.com/channel/UCM8wseo6DkA-D7yGlCrcrwA Smile Han www.youtube.com 클로저(Closure) 클로저 표현식은 외부의 간섭을 받지 않는 독립적인 코드 블록입니다. Java의 Lambda function과 비슷한 문법입니다. 클로저는 함수처럼 매개변수를 받거나, 값을 반환하도록 만들 수 있습니다. 클로저 선언 방법 함수와 선언하는 방법은 비슷한데 반환 타입 뒤에 in이 들어..
유정주
'closure' 태그의 글 목록