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.
Design
Iteratively Improving Your App – Decoupling Components at Module Seams and Adding Facades
I always like these types of articles, those that shed light on better ways to structure your application, reducing the interdependencies and making things easier to test. In this article, @ctietze does just that, looking at the some of the dependencies we inadvertently introduce and exploring some techniques for how to reduce them.
christiantietze.de
Mobile UX Design: Key Principles
In recent weeks I’ve been trying to learn more about the design side of mobile app development and @101babich continues to be a great source of material. In this article he covers the key principles of mobile UX design, from buttons and navigability to layout and white space. It’s a good read.
uxplanet.org
Code
Peeling Back the Curtain on the Swift Compiler
For most people, digging into the guts the Swift compiler is a daunting prospect. @slava_pestov is trying to address this though. In these two articles (Part 1 – The Secret Life of Swift Types, Part 2 – How to Talk To Your Kids About SIL Type Use), the first of a four-part series, he draws back the curtain and provides a great overview of how the Swift compiler actually works. If these two are anything to go by his series is definitely worth keeping an eye on.
medium.com
Logging in Swift
We all know singletons are bad right? Add logging to your app though, and there is a strong case for including one. However, it doesn’t have to be this way. In this article, @merowing_ uses the power of Swift Protocol Extensions to avoid this slippery slope.
merowing.info
Using a Core Data Model in Swift Playgrounds
I have to admit, my default instinct when it comes to anything Core Data related is to immediately reach for Xcode. As @andrewcbancroft points out though you can, with a few caveats, get Core Data up and running in an Swift Playground. I’m not sure it’s yet at a point that I’m going to change my default approach but it’s an interesting exercise.
andrewcbancroft.com
Libraries
Most Used SDK’s in the Top 200 Free iOS Apps
This week has seen the team at @MightySignal unleashing their analysis skills with a comprehensive breakdown of the most used SDK’s in the top 200 free apps. If you scan down the list it’s really interesting to see the prevalence of Swift-based libraries. As we move towards Swift 3, it looks like the tide is starting to turn.
mightysignal.com
Siren
Siren, by @artsabintsev, is a Swift-based framework for notifying your users when a new version of your app is available by comparing the users currently installed version against the latest version in the app store.
github.com
Tools
Playing Safely in Swift Playgrounds
One of the big announcements at this years WWDC was the release of Swift Playgrounds for the iPad. Forming a central part of Apple’s ‘Everyone Can Code’ campaign, Swift Playgrounds opens up a world of opportunities for people learning to code and further exposes Swift to a wider audience. In this article, and it’s companion article, @dimsumthinking makes some great points about what Swift Playgrounds may or may not mean to the future of learning to code. Worth reading.
imore.com
Videos
Swift Package Manager
So, you have some useful code that you want to release into the wider world but how exactly do you do that? Well, one option is the Swift Package Manager, the new packaging solution that was released along with Swift. It’s still in heavy development but is highly usable and in this talk, @czechboy0 provides a great overview.
honzadvorsky.com
Swifty? – Emerging Patterns and Idioms in Swift
As we know, Swift is a new language with it’s own design idioms and features. Since it’s release, the development community have been exploring different ways to use this new language, finding out what works and what doesn’t. In this talk, @dcutting reviews some of the new patterns that have risen to the surface.
youtube.com
Protocol Extensions – A History
There’s a phrase – “You can’t know where you’re going until you know where you’ve come from” and this applies equally to Swift as it does to any other topic. @gillygize has taken this to heart and in this talk looks back at the evolution of Swift’s Protocol Extensions.
realm.io
Other
My Method for Prioritising What to Learn
It’s always the same this time of year. WWDC has delivered a whole range of new frameworks and API changes to get up to speed on top of all the great books, videos and tutorials that people are publishing. With all this new information, it’s easy to suffer from information overload and in this article, @nerdonica gives us some great tips on how she copes with it all. There’s some I’ll definitely be stealing for myself!
github.io
Finally
Missing stdlib Module Declarations?
Great tip from @ericasadun / @mikeash on how to access the *whole* stdlib module definition within Xcode rather than just the individual submodules.
ericasadun.com
Comment
Welcome to another week of the newsletter! It’s been a busy week again this week. We’ve got new beta releases from Apple and things continue to move forward with the release of Swift 3 with the last day for source-breaking changes scheduled for 27th July. It’s looking more and more like it’s time to update all your code! In the mean time, there’s been some great articles and videos this week so let’s dive in.