It's no secret that Swift is the future of iOS development. However, there is much legacy code still written in Objective-C, including Cocoa Foundation itself. Understanding Objective-C and its interoperability with Swift is essential to being an effective, well-rounded Cocoa developer.
This little project is based on a great tutorial by Matthew Cheok on implementing an Android-inspired, material-style loading indicator, with some minor parameterization and re-factoring.
Lately, I've been gravitating toward using storyboards as a prototyping and wireframing tool, and setting and updating my style attributes in code. Here are a few examples of how to centralize style attributes using the UIAppearance proxy, global namespaced constants and the willSet and didSet property observers.
It so happens one of my current projects involves a chatbot interface, and an interesting challenge we encountered was that the response times of our bot were too fast. Messages were being sent to and from the server so quickly that our beta testers complained the interaction felt too unnatural! So we had to engineer an artificial delay that felt a little more like talking to a real person. Enter Grand Central Dispatch with a sprinkling of functional Swift.
With the introduction of an app extension, compile times for my current project became unbearably slow due to redundant re-compilation of common dependencies. Re-factoring this code into an embedded framework brought our compile times down significantly. This objc.io issue helped me understand the fundamentals of the build process. An oldie-but-a-goodie and an essential read.
This beautifully-crafted gem leaves you feeling a little speechless by the time you're done. Amazing how much emotion and atmosphere are carried through its masterful use of silence and gorgeous art direction. To say more would spoil it. One of my favorites this year.