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.
Well, here it is. Issue 200! Honestly, I never thought we’d get this far when I started Swift Developments over 4 years ago. In that time, Swift has gone from strength to strength. The language has become more stable (thankfully), language features continue to be added and refined, we’ve seen Swift moving outside of the Apple ecosystem with Swift on Linux and server-side Swift and we’ve recently seen Swift 5.1 released. Overall the language has come a long way since the Swift Developments started and it’ll be really interesting to see how it continues to change and evolve going forward.
An interesting article from Lina Danilchik of @splitmetrics on some of the large initial gains you can hope to see from doing some App Store Optimisation but why, after a few iterations, things will start to stabilize and you will only see minor incremental improvements. When that does happen, keep in mind these tips for your optimisation efforts.
Schedulers are a synchronisation mechanism in the Combine Framework that defines the context for when and where work is performed. In this article, @V8tr takes you through the basics, looking at the different types of scheduler available and how to use them to perform work asynchronously.
One of the great new features in UIKit this year has been the addition of
UICollectionViewDiffableDataSource. In this article, Aleksej Gurin digs into the details and shows you how to use the new APIs to simplify the development and updates of your UICollectionViews.
Now that you know how to jazz up your push notifications, make sure you also check out this in-depth article from @mattt that dives into some of the mechanics of how push notifications actually work – specifically device tokens – the unique identifier that is key to exchanging data between the server and the device (as well as some of the trouble they can cause).
If you’ve been developing for Apple platforms for any length of time, you’ll no doubt be familiar with the traditional View Controller lifecycle events such as viewDidLoad, viewDidAppear etc. SwiftUI however, has brought a fundamentally different approach to UI development so where do these lifecycle events no fit into this brave new world? @dbolella has been taking a look.
Alignment guides are a powerful feature in SwiftUI but can be a little confusing. @SwiftUILab has put together a detailed article to explain things, covering everything from what Alignment Guides are, the difference between implicit and explicit alignments, the different types of alignment guide that are available by default as well as how to create your own custom alignments.
In this episode of Swift Unwrapped, @jesse_squires and @simjp are joined by Swift Core Team member @dgregor79 to talk about many of the new features and design decisions that have gone into the new Swift 5.1 release.
SwiftUI by Example
I already linked to @twostraws‘s excellent SwiftUI by Example book and mini-site back in Issue 187 (it’s also had a recent update), but what I really wanted to link to this week was a great new set of videos that Paul has published that walks you through building your first SwiftUI app from scratch. Great resource if you’ve been waiting to get up to speed.