[Swift] 클로저 개념 완벽 이해하기

2023. 10. 17. 07:33·Apple/Swift
728x90
반응형

지난 포스팅에서 클로저에 대해 다뤘었는데 너무 사전적으로만 정리해서 그런지 크게 와닿지가 않아서 클로저의 개념을 다시 한 번 더 쉽게 풀어서 설명해보겠습니다! (사실은 제가 봐도 이해가 잘 안 가서 다시 쓰게 됐어요 ㅎ)

 

(지난번 포스팅이 궁금하신 분들은 여기를 참고해주세요!)

 

우선 클로저는 크게 2가지가 있습니다. 우리가 흔히 쓰는 func 키워드로 정의한 이름이 붙어있는 함수와 이름이 없는 함수 즉, 익명 함수 이렇게 2가지가 있습니다. 

 

한 눈에 이해하기 위해 그림을 만들어 봤습니다!

이렇게 Named Closure와 Unnamed Closure가 있는데 우리가 지금까지 선언했던 이름이 있는 함수들은 Named Closure입니다.

하지만 이 Named Closure를 클로저라고 부르지는 않고 그냥 함수라고 부릅니다.

 

반대로 이름이 없는 함수(익명함수), 즉 Unnamed Closure를 클로저라고 부릅니다.(물론 둘 다 클로저라는 것은 변하지 않습니다)

 

정리를 해보자면 클로저는 Named Closure와 Unnamed Closure 둘 다 포함되지만, 일반적으로 클로저라고 한다면 Unnamed Closure를 말하는 것입니다!

 

감사합니다.


틀린 부분이 있거나 더 좋은 내용 훈수 환영합니다!

공감과 댓글 부탁드립니다.

728x90
반응형

'Apple > Swift' 카테고리의 다른 글

[Swift] 저장 프로퍼티와 지연 저장 프로퍼티(Stored Properties, Lazy Stored Properties)  (3) 2023.10.19
[Swift] 후행 클로저(trailing closure)  (2) 2023.10.18
[Swift] 클로저(Closure)  (0) 2023.10.16
[Swift] 1급 객체 (first class object), 1급 시민 (first class citizen)  (0) 2023.10.13
[Swift] 가변 매개변수, call by address 구현  (1) 2023.10.12
'Apple/Swift' 카테고리의 다른 글
  • [Swift] 저장 프로퍼티와 지연 저장 프로퍼티(Stored Properties, Lazy Stored Properties)
  • [Swift] 후행 클로저(trailing closure)
  • [Swift] 클로저(Closure)
  • [Swift] 1급 객체 (first class object), 1급 시민 (first class citizen)
P_Piano
P_Piano
Apple 생태계 개발자가 되기 위한 학습과 경험의 기록
    반응형
    250x250
  • P_Piano
    피피아노의 개발 일지
    P_Piano
  • 전체
    오늘
    어제
    • 분류 전체보기 (215) N
      • Apple (133) N
        • iOS (23)
        • visionOS (5)
        • Swift (71) N
        • UIKit (2)
        • SwiftUI (24)
        • RxSwift (2)
        • Xcode (5)
      • C언어 (5)
      • C++ (8)
      • Dart (1)
      • Python (3)
      • JavaScript (17)
      • Git (1)
      • CS (39)
        • 디자인 패턴 (6)
        • 네트워크 (20)
        • 운영체제 (8)
        • Database (5)
        • 자료구조 (0)
      • IT 지식 (2)
      • IT 뉴스 (4)
      • 출처 표기 (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    함수
    Apple
    visionOS
    옵셔널
    운영체제
    SWIFT
    배열
    swiftUI
    변수
    Xcode
    ios
    Vision Pro
    클래스
    이니셜라이저
    연산자
    네트워크
    데이터베이스
    비동기
    자바스크립트
    UIKit
    프로세스
    프로그래머스
    코딩테스트
    스위프트
    티스토리챌린지
    프로퍼티 래퍼
    제어문
    오블완
    디자인패턴
    Initializers
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.1
P_Piano
[Swift] 클로저 개념 완벽 이해하기
상단으로

티스토리툴바