Why IOS Swift Perfer than Objective C
Apple just unveiled the biggest updates in history for app designers. I haven’t been this excited about a Keynote in years. Now I feel compelled to write a 4th chapter that will be dedicated to learning the new techniques introduced in Xcode 6: Swift, Playground, Extensions, CloudKit and Testflight.
My approach with the Design+Code book has always been to help designers learn how to make an iOS app. It’s Storyboard and UI-centric. It’s about the holistic experience of building a product rather than designing in silo, or using deprecated technologies. It’s about breaking barriers and killing unnecessary steps. Xcode 6 will take that concept even further.
How does Swift impact what I’ve learned in Xcode 5?
Everything in the book still applies. iOS 8 is exactly the same visual languageas iOS 8 and the Sketch portion is perfectly valuable. Even all of the techniques discussed in Chapter 3 remains unchanged: Storyboard, Libraries, Animations, Frameworks etc. Swift is simply a different syntax, it doesn’t invalidate how the UIKit objects and properties are used. All the Objective-C code still works.
Most of the Cocoapods libraries and resources in StackOverflow are still written in Objective-C. Your ability to read that code will help you get started with Swift. Furthermore, Swift isn’t ready yet. It’ll take months before you’ll be able to play with it on a production level. I am currently learning on a beta version and it’s not as simple for beginners at this time.
Swift: simpler code
At least 80% of your audience is on Mobile apps versus Mobile Web and number will only grow from here on. As Apple disclosed, there are 9 million developers on iOS and that number has doubled since last year.
You can download the iBooks to learn Swift. It’s very code-centric, I’ll try to make sense of it for Chapter 4 and distill that information to make it UI-centric for designers.
While this isn’t specifically made to test UIs, you’ll be able to test your code in real-time. It’ll get you warmed up on learning how to code for iOS. Learn more about using Playground.
Storyboard Preview and Adaptive UI
Storyboard is even more powerful in Xcode 6, allowing you create universal apps using one single Storyboard. You can even Preview all resolutions (iPad, iPhone, Landscape/Portrait) at once. You can use Size classes to make designing for different screen sizes and orientations easier
Testflight 1,000 users
One of the pain points in iOS was to distribute beta versions of an app internally. No more. Apple will launch a tightly integrated Testflight app that will allow anyone with an Apple ID to download betas on their mobile devices. Additionally, you can distribute your app up to 1,000 users instead of 100 devices.
The CloudKit framework
There is nothing more empowering than seeing interesting content populating your design, that’s the threshold that is needed for your design to feel like a real product rather than a mockup. With CloudKit, you won’t need to worry too much building a server or deployment. You can store all your data and assets up to 1PT and 10TB respectively
As you’re working with complex Autolayout contraints for your designs, you’ll need a way to debug when something goes wrong. Apple just released an insanely cool 3D view of how each UI object is layed out, helping you to see what layers aren’t rendered correctly.