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.
Navigating the vagaries of the App Store review process can be a daunting process. We’ve got the formal guidelines as published by Apple in their App Store Review Guidelines but we also have the fact that those rules are policed and enforced by humans. @apike shares some of his experience of this minefield and provides a number of tips specifically related to Guideline 2.1 – Information Needed.
Building a Dynamic Modular iOS Architecture
As a community we tend to talk a lot about app architecture. MVC, MVVM, Viper, (insert your architecture of choice). This idea from @JareckiMark takes a slightly different approach, drawing on the idea of Flow Controllers and small, loosely coupled frameworks with clearly defined architectural layers to create a highly modular app architecture that is designed with change in mind.
KeyPaths in Swift
Added in Swift 4.2, and somewhat influenced by their ObjC siblings, Swift Keypaths are a powerful addition to the language but their benefits (and how to use them) aren’t necessarily well understood. In this in-depth guide, @terhechte hopes to address that, taking you from absolute basics to some of their more advanced use cases. Definitely one to add to your reading list.
Bindable values in Swift
Somewhat staying on the theme of keypaths, this article from @johnsundell takes a look at the concept of bindable values in Swift and how, by drawing on generics and some of ideas from Functional Reactive Programming, you can write Swift code that automatically bind properties of your UI elements to properties of your model objects. If you’re anything like me, you’ll need to concentrate for this one. ?
Structuring Your iOS App for Split Testing
In this age of data-driven development, Split Testing (also known as A/B testing) has become increasingly popular as a way of iterating on your app design and rapidly testing out which features work best. Whilst the benefits of this aren’t that difficult to see, it does have implications for you structure our apps in order to support the maximum flexibility for experimentation whilst maintaining a clean and maintainable architecture. @AliuArlind supplies a practical guide.
Building tvOS Movie Database App using The Movie Database (TMDb) API
Take your tvOS development skills to the next level with this detailed tutorial from @alfianlosari showing you how to build your own tvOS Movie Database App using the Movie Database API. Good option if you’re looking for your next little weekend project.
Beautifying your iOS app with Core Animation!
In this article, @brizzy_artez shows you how to make your app stand out from the crowd by using some of the power of the Core Animation framework to add an animated progress view to your app.
Migrating to Unified Logging: Console and Instruments
In this tutorial from @rushkeegan you you can leave the
Although I haven’t tried this out for myself as I don’t have a Touch Bar enabled MacBook (although that *may* change later this year ?) I’ve seen a lot of people talking about this project from @pigigaldi this week which helps you free up some screen real-estate by moving your dock onto the Touch Bar. Great idea from Pierluigi but with so many still less than convinced by the purpose of the Touch Bar it does raise the question of why Apple hasn’t done this from themselves as it does seem like a natural fit? ?
Reverse Engineering iOS Applications
If you’re interested in digging into the guts of different iOS apps to investigate how they work @ivRodriguezCA has published an extremely useful (and free) multi-part course that takes you from zero to reverse engineering production apps on the app store.
Core Image for Fun and Profit
@noahsark769 dives into the Core Image framework and talks about
CIFilter and his latest project CIFilter.io – a new site that documents the different filters available in the Core Image framework along with an associated demo app that lets you try them out. It’s nicely done.