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.
I’ve never been convinced about the discoverability aspects of 3D touch on iOS. Don’t get me wrong, 3D touch adds some nice conveniences once you know they’re there it’s just knowing that you have it as an option (and remembering that you do) that makes the whole experience less than ideal. In this article @eliz_kilic digs into this issue and suggests a potential solution that I really like.
Guilty of leaving TODOs all over your code? How often to you actually go back and fix them? Well there’s no forgetting about them now. Swift 4.2 has introduced two handy new compiler directives,
#error, that you can use to trigger some handy reminders from the compiler. @gregheo dives into the details.
Another new introduction in Swift 4.2 is the arrival of the somewhat controversial
@dynamicMemberLookup – a new annotation that allows calls to object properties to be checked at runtime rather than at compile time as they normally would. This makes things along more flexible but does mean that once the type has been annotated there is no way to specify at the call site whether the lookup should be dynamically or statically checked. @aligatr has been looking at whether this situation can be improved.
The iOS notification system has receive a number of notable improvements in iOS 12, including the ability to group notifications, independent notification control and further options for interactive notifications through the UserNotificationsUI API. @kuba_suder takes you on a tour of some of the changes.
If Core ML hadn’t made machine learning accessible, Apple’s latest release Create ML certainly does, letting you quickly and easily create your own machine learning models to classify text, images and tables of data from the relative comfort of an Xcode playground. In this tutorial @mataharimau shows you how to get started by creating an image classifier of your own.
With Apple’s recent relaxation of App-store rules to allow free trials for apps via non-consumable IAPs, the team at @blackpixel have this week published IAPKit, a open source framework that lets developers easily connect to their IAP products and display them within a simple UI. Useful if free-trials are somewhere in your apps future.
Beta testing is a critical stage in the development lifecycle of your app letting you (amongst other things), catch potentially emergent bugs that may have slipped through your test suites and letting you add that final polish to your app before it’s made available in the store. But how do you go about finding beta testers, distributing your app and obtaining that oh so critical feedback? The team at @instabug have put together an all-in-one guide.
Manager of the Languages and Runtimes team at Apple, @tkremenek, talks to @simjp and @jesse_squires about binary compatibility in Swift 5, how different Swift runtimes will co-exist once the runtime is shipped within the OS as well as how module stability and app-thinning of the Swift runtimes will work going forward. Interesting discussion.
With over 100 videos to choose from this years WWDC you might be looking for some guidance on which videos should make it onto your viewing list. With this in mind @kharrison has put together his annual list of some of his favourites.
If you’re looking to get up to speed with server-side Swift, @dokun24 and the team at RayWenderlich.com have released a new course on how to use Server-Side Swift with Kitura and if that wasn’t enough the good news is that it’s also FREE! Make sure you check it out.
If you’ve just getting started, having a strong understanding of the lifecycle of a view controller is a must. In this article, @TheDaddycoding looks at the different callbacks of the view controller lifecycle including what they are and when you should use them.