Memory leak is the case in which you have given up access to the object which is not able to be deinited due to a strong circular reference it gets involved. Closure is something usual which We use a lot in Swift, however sometimes careless in using and end up with memory leak
Learn from a book is good, but learn from the success model is even better. Youtube iOS app is one of the well-implemented apps. In order to study the app, I use a tool called Reveal App to help retrieve the views hierarchy. This took me many days for the first setup. However, what I eventually have discovered is worthy. Ok, let's see what is in the mystery box.