Swift Developments is a hand-curated newsletter containing a weekly selection of the best links, videos, tools and tutorials for people interested in designing and developing their own apps using Swift.
An interesting article this week from Randy Nelson at @SensorTower reporting the continuing growth of app store revenue. This is obviously great news for app developers in general but it would also be interesting to see how these revenues are distributed the store and whether big and small developers alike are benefitting from these increases.
Whilst your overall app design is important it’s the micro-interactions – those small moments users have when interacting with your app – that can be the difference in how fun, easy and delightful your app is to use. The key? Focusing on the detail. Denislav Jeliazkov explains.
Anton Kovalev with a more advanced animation tutorial in which he shows you how to combine different UIView animations to create a more complex card-based transition between two view controllers.
My kids are big fans of domino runs but given that they’re still quite young they quickly get frustrated when they accidentally knock one over to the inevitable effects. Koushan Korouei might have a solution though. He’s come up with this fun project that uses Swift, ARKit and SceneKit to build a virtual domino run of your own.
When writing heavily asynchronous Swift code such as when handling network requests, it’s not uncommon to have multiple nested closures handling different parts of your asynchronous operations. In this tutorial, Dejan Agostini shows you how to save yourself from this callback hell by using PromiseKit, a Swift implementation of promises from Max Howell.
Honestly, I don’t tend to use many Xcode extensions but this week I *have* been playing around with SwiftMockGeneratorForXcode from Sean Henry. It’s an Xcode extension that helps you quickly and easily generate Swift test doubles and so far I’m liking it.
The performance of the code that you write can play a huge part in your apps user experience, especially on older devices. The good news though is that with Xcode and Instruments, we have some extremely powerful tools at our disposal to measure, investigate and understand the performance characteristics of our apps. Phil Farrugia takes you on a practical tour.
Architected on top of LLVM, LLDB is the default debugger installed with Xcode. Whilst you may be used to using it from Xcode, and maybe even from the command line, you may not know that you can also extend it’s capabilities via a set of Python script bindings. Daniel Martín shows you how.
One of the biggest talking points of macOS Mojave has been it’s new Dark Mode (personally I’m a big fan), but when it comes to implementing it in your own macOS apps, there are alot of nuances to watch out for. With this in mind, Daniel Jalkut has been putting to together a great series of posts with tips and advice to keep in mind.
In this talk from iOSDevCampDC 2018 Samuel Giddins takes you on a quick tour through the steps necessary to package Swift code into a static library along with some of the gotchas for importing these libraries into your Swift code.
One of Swift’s more powerful features are generics. In this talk from try! Swift NYC 2018, Jon-Tait Beason looks at some of the different types of generics and shows you how write generic, reusable code of your own by identifying common requirements in collections of similar concrete types.
A link on mental health might not be something you were expecting to see in an issue of Swift Developments however it’s a hugely important topic and one that we don’t talk about enough as a community. With this in mind (and in honour of World Mental Health Day that was on October 10th) here is a article from Michael Gearon with 10 tips on how to protect your own mental health at work.