Closures - Zelda App (Xcode 8, Swift 3, iOS)
 
I remember when I first learned of this concept of closures. It was a difficult concept to grasp. It was in Microsoft's .NET framework. They called them lambdas. 

The idea is that you can pass functions into other functions as parameters. Kind of like dependency injection when you think about it. You are saying, "Here is some code I want you to run inside your function."

This video was tougher for me to teach. It's hard to explain the concept. In hindsight I think I could have made a better video to teach this concept. I might do that at a later time.