Since Apple came out with Swift, most of us have focused on using it to write our iOS/Mac OS X applications; it was the first instinct we had upon learning the language. Hell, it was the only instinct I had when learning the language the day it first came out. It wasn't until 7 months later that I realized it was even more powerful than it seemed, and that scripting in swift was not only possible but quite easy!
Since the advent of Swift, our behavior towards nil values have greatly changed. Swift brings type safety, and also works hard to prevent sending messages to nil by introducing Optionals. Implicitly unwrapped optionals are pretty new and behave just like optionals. However, they can be dangerous to your code if used incorrectly. So here, let me help with that!
I often find myself worrying about retain cycles in my code. I feel like this is a common concern amongst others as well. I don't know about you, but it seems like I am constantly hearing "When am I supposed to use weak? And what the hell is this 'unowned' crap?!" The issue we find is that we know to use strong, weak, and unowned specifiers in our swift code to avoid retain cycles, but we don't quite know which specifier to use. Fortunately, I happen to know what they are AND when to use them! I hope this guide helps you to learn when and where to use them on your own.
My name is Hector, and this is my new blog - KrakenDev! It has been suggested many times that I start a blog, but I’ve never felt like I quite lived up to some of the other fantastic bloggers out there who contribute so much to the development community. It wasn’t until today that I decided to take the leap, thanks to the admonitions of my friend Natasha. She very kindly sent me this video by Ash Furrow which was an amazing motivator to get off my ass and “just do it”. Yay Nike!