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 Issue 150 of Swift Developments! So with Swift Development reaching another half-century (woot! 🎉), we’ve not got long to wait now before this years goodies from Apple. From my perspective I suspect that most of the interest is going to be around the next generation of iPhones, but with the early leaks I’ve seen, I find myself more interested in the next iteration of the Apple Watch. If everything turns out as reported, I suspect my wallet is going feel a little lighter in the near future. Have a great week and enjoy tomorrow’s event if you’re planning on watching!
A deeply honest write-up from @cocoawithlove on the history, lessons, and his reasoning for finally retiring, his app StreamToMe. Props to Matt for sharing this one.
Indie game developer and creator of the app store hit ‘A Dark Room’ @amirrajan with the manuscript of his book – Surviving the App Store. Published under creative commons, it has a bunch of great tips and interviews with other indie game developers discussing what it takes to make it as an indie game developer.
China represents a huge (and potentially lucrative) market for any app developer looking to expand their user base but becoming successful in this market requires effort and a strong understanding of the cultural differences between China and western markets. @appinchina highlight some of the key factors to consider.
Despite the progression in digital design tools, paper and a pencil can often be the most useful design tools you have at your disposal. In this article, @101babich look at some of the strengths and weaknesses of this ‘back-to-basics’ approach along with some practical tips and recommendations.
Following on from the recent RwDevCon 2018, @l_ukefreeman has a great write up of some of the most common design issues the team at RayWenderlich saw during the two-day Design Lab they held during the conference. It’s worth reading as there are some great lessons to be learnt here.
Regardless of language, how and when a function can return is often the source of much discussion around the interwebs with some advocating a return fast, return often approach and others pushing for single returns statements. As @johnsundell illustrates in this article, through the use of the the
guard statement, the Swift language tends to promote the former approach which can have some serious benefits for code clarity.
In addition to the traditional delegate pattern used extensively in Objective-C, closures in Swift have added an alternative approach – closure callbacks – which have been slowly growing in popularity as Swift has matured. @SteveBarnegren has been looking at the differnences between these two patterns and trying to identify some specific recommendations of when each approach should be used.
Ok, we’re not quite at minority report yet and it’s not that practical at the moment but I enjoyed this article from @brunomuniz_af which, through the use of ARKit and Core ML, explores the boundaries of human-computer interaction by creating a gesture-based interface for browsing the web.
MapBox is increasingly a major player when it comes to mobile mapping solutions and in this article, @rockarts explores some it’s iOS SDK using it to create an iOS app with custom map and navigation features.
When it comes to networking in your iOS apps there are generally two choices – use an external library like Alamofire or Moya or write the networking layer yourself. Although turning to an external library may be the easiest and maybe quickest approach, it’s not actually that hard to write a protocol-oriented, type-safe networking layer of your own and one that you fully understand and are in control of. @marcinjackowski shows you how.
Ok, so unless you’ve been doing some hard-core UIKit wizardry, it’s unlikely that you’ll have had much to do with UIKit’s touch handling subsystem. Buckle up though as @khanlou is about to take you on a journey through Apple’s documentation, hits, points, recursion and view hierarchies.
If you’ve spend any time programming with Xcode, you’ll have no doubt come across the ‘delete the derived data folder’ trick for kicking Xcode back into shape when it starts to become unruly. But in all those times you have blindly deleted the folder and restarted Xcode, have you ever thought about what the derived data folder actually contains? Wonder no more – @VojtaStavik has all the details.
As developers, we’re always faced with learning new frameworks, languages and techniques but let’s be honest, they’re not always the simplest of topics to understand. Rather than letting this get you down, @b0rk has some great advice on how to tackle learning these difficult topics.
Finally, to close out this weeks issue, an interesting article from @kschwabable in which she interviews ex-Apple designer Imran Chaudhri – one of the original six-person team who designed the iPhone – about Apple, interface design and the future of smartphones.