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.
Welcome to another issue of the newsletter! I hope you’ve had a great week. It was a national holiday here in the UK yesterday so it’s been nice to have a bit of down time and catch up with what has been happening around the community. There’s been some great articles and videos released this week so let’s dive straight in.
Announced back in March, this week finally saw the release of CareKit. If you missed March’s announcement, CareKit is a new, open source framework from Apple that allows developers to build apps that let users track their care plans, monitor symptoms and track objective measurements whilst also allowing them to share insights with their care teams. It looks interesting and it’ll be great to see what people build.
It’s been a busy week for Apple. In addition to CareKit, this week also saw the announcement of a new Apple Music API via Apple’s Affiliate Program Newsletter. The new API will allow developers to check whether a user is a current Apple Music member, queue up songs and both read and create new playlists. In addition, Apple have also introduced a new support page that details Apple Music Best Practices for Developers including App Store Review Guidelines that you’ll need to comply with to get your Apple Music related apps approved.
There is no getting away from it. We’re all getting older. Traditionally, software development is a young-persons game but if you’re one of those who is close to, or have already exceeded, the big ‘4’-‘0’, then this article from @akosma provides an opportunity for some reminiscing as well as some hard-won advice.
Code Reviews can be a great addition to you’re team’s development process providing an opportunity to both increase quality and share knowledge amongst the team. In this article, @paciej00 takes a look at how to introduce them in your organisation as well as what to look for when conducting reviews.
Framework Oriented Programming
With the availability of a range of Apple Platforms including iOS, OSX, tvOS, WatchOS and Apple TV, the need for developers to create cross platform code is becoming increasingly important. In this article, @pepibumur takes a look at a practical solution to this problem – Framework Oriented Programming.
Grand Central Dispatch (GCD) is an extremely powerful framework for Apple Developers but it has a C-based API and can be a little difficult to work with. In this post, @khanlou looks at how to combined the low-level capabilities that GCD provides into higher-level capabilities within our applications.
If spelling isn’t your thing, then you’ll love UITextChecker. You’ve likely already seen it. It’s what comes up with those helpful suggestions when trying to write something in the iOS notes app or trying to send SMS messages to your loved-ones in iMessage. In this article, @cr0ath takes a peek under the hood and looks at how you can build this same functionality into apps of your own.
Animation can be used to provide subtle prompts and feedback to your users whilst also adding an additional level of polish to your applications. In this article, @caiobzen takes a look at how to use the power of CoreAnimation to create a fun little speech bubble animation.
As you know, Swift is a young language and there are some dark corners that aren’t quite as polished as we would collectively like. After Matt Nedrich reported some relatively sedate build times (and by that I mean 12 hours+), @nickoneill has taken a look at narrowing down the real source of the problem. It’s also been really great to see how quickly the Swift community have subsequently responded to fix the issue.?
As developers, we generally spend more time reading code than we do writing it and if you’re an Xcode user, this article is for you. In it, @arekholko takes a detailed look at some of the power-features built into Xcode’s search capabilities. A great time saver and definitely worth the read.
There is a whole range of JSON parsing libraries available to us in Swift but this one caught my eye. JSON is a fast JSON de-serializer that sports a full test suite, full documentation and some additional Alamofire goodness. Depending on your needs, it might be just what you’re looking for.
ARAnalytics has been around for a while but as I’ve been having a look at different analytics libraries this week, I thought I’d mention it. This framework from @orta is not an analytics framework itself, instead it provides a convenient analytics abstraction layer and support for a whole range of underlying analytics libraries such as Crashlytics, Google Analytics, HockyApp and more. Ideal if you’re investigating which library you want to use.
List controllers such as UITableViewController or UICollectionViewController are extremely common in iOS but have a tendency to suffer from massive view controller syndrome. In recent years, developers have used many techniques to try and break these massive controllers apart by moving responsibilities into other classes. I this talk, @Jad6os takes another look at this topic and shows us how we can use protocol extensions to move the logic of our list controllers out into protocol extensions.
With modern apps generally conforming to the flat design style that originated with iOS 7 we have have somehow lost some of the magic that their predecessors brought to our screens. In this talk from !trySwift, @b3ll looks at how to reintroduce some of the fun back into our applications by prototyping interactive gestures and animations using Swift and Facebook’s pop Framework.