클로저를 사용하면서 weak self를 사용해본 경험이 있거나, weak self를 사용하는 코드를 본 적이 있을 것이다. weak self 를 왜 사용해야 하고, 언제 사용해야 하는지에 대해 알아보자. 1. weak self를 왜 사용하는가? Weak reference(약한 참조)는 Retain Cycle(순환 참조)로 인한 메모리 릭을 벗어나기 위해 사용한다. Swift가 Automatic Reference Counting(ARC)를 사용하면서 대두분의 참조 문제를 해결해주지만, 두 가지 이상의 객체가 서로에 대한 Strong Refrence(강한 참조) 상태를 가지고 있다면 Retain Cycle이 발생하게 되며 이때, 메모리 릭이 발생한다. 메모리 릭이 발생한다면, 앱에서 Out Of Memory..