October 16th, 2017
Apple first showed the Swift language to developers in June 2014. At the time I am writing this, that means Swift has been out for a little over three years. That means no developer can have more than three years of Swift experience. You can’t require 5+ years of Swift experience in your job description when the language hasn’t been out that long.
October 5th, 2017
Xcode 9 adds the Undefined Behavior Sanitizer. Undefined Behavior Sanitizer detects undefined behavior in your code, specializing in checking unsafe constructs in C, C++, and Objective-C code.
Undefined Behavior Sanitizer is turned off initially. You must enable it in your scheme. Select the Run step in the scheme and click the Diagnostics button at the top of the scheme editor. Select the Undefined Behavior Sanitizer checkbox.
After selecting the Undefined Behavior Sanitizer checkbox, build and run your project to run it through Undefined Behavior Sanitizer. You can learn more about Undefined Behavior Sanitizer in the following WWDC video:
October 2nd, 2017
Xcode 9 adds Main Thread Checker, a tool that detects when you make AppKit, UIKit, and WebKit calls on a background thread. Main Thread Checker should be enabled automatically when debugging, but you can check your scheme by selecting the Run step and clicking the Diagnostics button at the top of the scheme editor. Make sure the Main Thread Checker checkbox is selected.
You can learn more about Main Thread Checker in the following WWDC video:
September 25th, 2017
Xcode 9’s Source Control preferences let you specify files to ignore so the version control system won’t track them.
September 21st, 2017
Xcode 9 provides a preview of a new build system that has been built from scratch in Swift. The new build system is supposed to be faster and more reliable.
To use the new build system in one of your projects, you must enable the new build system for that project. Choose File > Project Settings to open the project settings sheet. Choose New Build System from the Build System menu under Shared Project Settings.
I didn’t notice much of a difference using the new build system, but I don’t have any huge projects that take forever to build with the old build system.