카테고리 없음

swift delegate - 스위프트 delegate 사용 방법 이해하기

studying develop 2021. 6. 7. 01:34

delegate에 대한 글은 많아서 일단 제가 햇갈렸던 부분을 설명해 보겠습니다.

 

자꾸 위임자라 그래서 잘 와닿지 않았는데

일단 delegate는 특정 delegate 프로토콜을 만족하는 프로퍼티라 볼 수 있습니다.

 

그래서 주로 delegate를 사용하는 단계는

1. 구현하려는 delegate의 기능을 명세 해주는 protocol을 구현합니다.

2. protocol을 상속받는 class를 정해서 (이 클래스를 A라 합시다), protocol이 명세한 사항을 해당 class A에서 구현해 줍니다.

3. 이제 A를 이용할 B를 찾습니다. 무슨 말이냐면 A는 B의 특정 기능들을 대신해서 수행해줄 대리자 입니다.

4. A의 도움이 필요한 B 클래스에 위에서 만들고 구현해준 delegate 타입으로 프로퍼티를 생성합니다.

5. 이제 4에서 만든 B의 델리게이트 프로퍼티에 A를 넣어줍니다. A가 B의 델리게이트(위임자)이다 라는 뜻이죠.

 

이제 이용하면 됩니다. B는 위임할 기능을 4에서 생성한 프로퍼티를(A라는 위임자) 이용하면 됩니다.

프로토콜에서 명세해준 메소드들을 이미 2번에서 구현해놨습니다.