# 공부를 위해 정리하는 글이므로, 정확하지 않을 수 있습니다.

 

처음 delegate의 개념을 접했을 때, 안드로이드의 calback 메서드와 어떤게 다른지 이해가 잘 되지 않았다.

 

'델리게이트는 단순하게 어느 누군가가 너에게 변화를 알릴때, 너 자신을 다른자신에게 넘기는 것을 말한다. 그래서 너는 그들에게 반응하게 된다. 예를 들어, 만약 ViewController가 네트워크 서비스에게 얘기할 때, 그리고 그 서비스가 어떤 요청을 끝냈을 때 알림받기를 원할 때 이것은 그것 자체로 네트워크 서비스의 델리게이트가 된다. 그리고 이것을 끝마쳤을 때 네트워크 서비스는 델리게이트를 호출할 것이다.'

 

'callback은 델리게이트 패턴과 기능면에서 유사하다. 이것은 어떤 일이 발생했을 때 다른 객체가 이를 알도록 하며, 데이터를 넘긴다는 것이 동일하다. 델리게이트 패턴이 자신의 참조를 넘기는 대신에, 콜백 메서드는 함수를 넘긴다는 것이다. 함수는 swift의 일등시민이므로 니가 함수 속성을 가질 어떤 이유도 없다.'

+ Recent posts