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.
News
GM Seeds
At same time as announcing the new iPhone 7 and Apple Watch at Wednesday’s event, Apple released GM seeds for Xcode, macOS, iOS 10, watchOS 3 and tvOS. It’s also opened up the doors for app submissions with Swift 3 to the app store. Time to get your skates on!
apple.com
Business
Evolving App Store Business Models
With the recent introduction of subscription pricing models were set to see another change in how developers make money in the app store. In this article, @_DavidSmith reflects on how changing app store business models have affected his business over the last 8 years.
david-smith.org
iOS Subscriptions Primer
Making money in the app store has never been easy but with the recent introduction of subscription pricing models, Apple have opened up another potential revenue model for developers. @parrots provides a nice introduction.
medium.com
The Pros and Cons of Rewriting an App From Scratch
If you’re faced with a code base which is difficult to maintain and difficult to change, one option you might be considering is rewriting your app from scratch. However, it’s a big decision and one that might not be as simple as you think. Kasia Pawlaczyk weighs up the pros and cons.
Design
This Is How to Design Your Mobile App for Maximum Growth
We all want more users for our app but how do we increase the odds of this happening? In this article, Kamo Asatryan provides some growth hacking tips to incorporate into your own apps in order to drive user growth.
firstround.com
Basic Patterns for Mobile Navigation
Burger menus, tab bars and gestures. @101babich with another great article, this time looking at different navigation patterns within mobile apps.
babich.biz
Code
How to Generate Haptic Feedback with UIFeedbackGenerator
One of the nice new features in the latest versions of the iOS 10 SDK is the ability for developers to provide haptic feedback to users through the use of UIFeedbackGenerator and it’s three subclasses, UINotificationFeedbackGenerator, UIImpactFeedbackGenerator and UISelectionFeedbackGenerator. Quick off the mark, @twostraws provides a quick introduction.
hackingwithswift.com
Escaping and Nonescaping Closures in Swift
In Swift, functions and closures are first-class objects allowing you to store them and pass them around just like any other value or object. Commonly used as completion handlers, Swift 3 introduces a new little gotcha with closure parameters in that they are non-escaping by default. But what does non-escaping actually mean? @gregheo provides a great explanation.
swiftunboxed.com
Spicing Up Status Messages
@bukovinski shows us how to combine MBProgressHUD from @jdg, PaintCode and some Core Graphics magic to create an nicely animated status overlay.
pspdfkit.com
Swift: Custom Fonts. Slightly Less Awful
In this article, @cocotutch turns typography tamer, with his current solution for handling completely custom fonts in Swift.
medium.com
Dependency Injection with Storyboards
If you’ve not come across it before, dependency injection, the act of providing an object with its instance variables, is a great technique for writing modular and testable code. However, getting dependency injection to play nicely with storyboards can be a little tricky. @obusek highlights some techniques you can use to get the best of both worlds.
Libraries
SwiftLocation
SwiftLocation is a lightweight library @danielemargutti for monitoring locations and beacons. Supporting, amongst other things, beacon advertising and reverse geocoding with both Apple and Google services this might be one to watch.
github.com
Haneke
Haneke is a lightweight generic memory and disk caches for iOS and AppleTV. Written in Swift 2 (there is a branch for Swift 3 that is in progress) and with a full set of unit tests, Haneke provides a thread-safe and asynchronous access for a range of different data types with data retrieval being as simple as a single line of code.
github.com
Testing
Unit Testing on macOS
I’m a big fan of unit testing for both checking that your code does what you think it does, improving it’s structure and for making your code more maintainable in the longer-term. However, if you’ve never attempted unit testing before getting started can be a bit of a challenge. In this two-part series (Part 1, Part 2) @trozware provides a great introduction to this topic.
raywenderlich.com
Tools
Migrating Code Signing Configurations to Xcode 8
I’ll be honest. I always find code signing a bit of a pain and throw in multi-developer teams and it seems to require some sort of black magic that sadly, I seem to have missed out on most of the time. However, I did come across this article this week from @queersorceress which has gone along way toward illuminating some of Xcode’s dark and mysterious code signing secrets. Great article.
pewpewthespells.com
Depcheck
Depcheck is a useful little tool from @wojteklu which analysed your Xcode projects and workspaces to identify the dependencies between classes in your project, allowing you to quickly identify those classes that have too many dependencies or aren’t being used at all.
github.com
Videos
Bringing Your App To Life with CALayers
In this talk from AltConf, @smbarne combines Sketch, PaintCode and Core Graphics to setup and animate a complex interaction for the sleep screen in their FitBit app.
realm.io
Finally
Our lightest product ever…
Kudos to the team at @nicerstudio for this brilliant and inspired parody! ?
appleplugs.com
Comment
So the wait is over and it looks like the vast majority of the leaks were true!
After Wednesday’s announcement of the new iPhone 7 and Apple Watch and Sega’s on-stage appearance for Super Mario Run, many spent much of Friday improving their Sega Olympic Gold skills by seeing how fast they could tap and click to get their preorders in. As with many of Apple’s previous launches, stocks looked like they were pretty low though and it sounds like many lost out in the inevitable first-day rush.
From my perspective, although the camera and some of the other new features look pretty compelling, this time around I’ve decided to exercise a bit of self control before deciding whether to “splash-the-cash”. Apple’s iPhone upgrade program (which has now come to the UK) looks a particularly interesting option that I’ve been considering but given some of the tweets I’ve seen this week, the process doesn’t seem to have gone particularly smoothly for many of the American’s who took this route last year. Matte black does look pretty cool though… ?.