Swift
Swift 4.0 Released!
Swift 4 is now officially released! Swift 4 builds on the strengths of Swift 3, delivering greater robustness and stability, providing source code compatibility with Swift 3, making improvements to the standard library, and adding features like archival and serialization.
Swift 4 Weak References
Weak references are an important language feature. Swift's original implementation was wonderfully clever and had some nice properties, but also had some problems. By adding an optional side table, Swift's engineers were able to solve those problems while keeping the nice, clever properties of the original. The side table implementation also opens up a lot of possibilities for great new features in the future.
Handling empty optional strings in Swift
String optionals in Swift are a little peculiar. The String? type sort of has two “invalid” values: nil and "". This can make it cumbersome to handle and ripe for bugs and unexpected behavior.
Creating custom collections in Swift
When creating collections of objects or values in Swift, we usually use data structures provided by the standard library - such as Array, Dictionary and Set. While those three cover most use cases, sometimes creating a custom wrapper collection can enable you to make your code more predictable and less prone to errors.
iOS Development
Writing Imperfect Code
If all you’ve ever conceived of “duplication” as is shorthand for “bad,” it’s almost astounding to read that there are times when duplication is acceptable– even preferred.
Building Apps for iPhone X
iPhone X has a beautiful new screen that will make your app look great. You may need to make some changes in your app to accommodate the new screen's size and rounded corners. Learn about some common pitfalls and see how you can take advantage of iOS 11's Safe Area and layout guides to make sure your app looks the best it can.
Measuring Swift compile times in Xcode 9
The Swift type-checker remains a performance bottleneck for compile times, though it has improved tremendously over the past two years. You could even say the type-checker has gone from being drunk to sober. To help users debug these issues, awhile back Jordan Rose added a frontend Swift compiler flag that would emit warnings in Xcode for functions that took too long to compile, or rather took too long to type-check. In Xcode 9, there’s a new, similar flag for checking expressions.
New App Store Review guidelines cover Face ID, ARKit, and mor
Apple has updated its App Review Guidelines for September 2017, taking into account new privacy concerns made possible by Face ID and ARKit, as well as officially banning the scam malware scanners that were raking in user cash in recent months.
Why I Love ARKit for Apple iOS 11
Apple’s iOS 11 release brings ARKit, a new SDK that unlocks devices’ potential to transform reality. Learn what it is, how to use it and why you’ll love it.
Instruments Tutorial with Swift: Getting Started
Learn the easy way to catch and fix memory leaks in your apps and make it faster and more responsive by using Instruments.
ThomasHanning.com
Seven Things I Wish I Knew When I Started As A Developer
I’ve been a full-time iOS developer for about five years now, and there’s a lot of stuff I’ve learned the hard way. So if you ever invent a time machine, please handover this list to my younger self – thanks!