Getting Started

Swift vs. Objective-C

Apple just announced that Swift version 1.0 has been released and you can now submit your Swift apps to the App Store. You might be asking yourself which language you should use if you're starting a new iOS app.


From a pure programming standpoint, you're almost guaranteed to be more productive using Swift. Of course, if you're an expert Objective-C developer, that might not be the case.

Swift is the obvious choice if you're new to iOS and looking to get up to speed quickly. The language will stay out of your way allowing you to focus on the things that matter: making your app work the way you want it to!


Just about every iOS app is built using libraries of code created by Apple in Objective-C. Many apps also use libraries created by other developers (which, to-date, have been written in Objective-C as well). Libraries are useful things you can use to save a lot of time and add functionality into your app easily.

Now you may be wondering...

"If all the existing libraries are written in Objective-C, won't I still have to continue using Objective-C?"

The answer is no, Swift can interact easily with Objective-C code whether it's a single file or an entire library. This means you'll be able to build your application in Swift while taking advantage of Objective-C libraries very much like you would before.

Keep in mind that Objective-C isn't going anywhere anytime soon, so if you're inheriting an Objective-C codebase, or looking to modify an existing Objective-C library, wading into the Objective-C waters is inevitable.

How do I do [x] with Swift?

With Objective-C being close to 35 years old, and it having been language used to build Mac OSX and iOS applications for years, there's a substantial community and body of knowledge out there constantly documenting best practices, approaches to common and not-so-common problems, pretty much anything you can think of about using Objective-C.

When learning Swift, something that may be an issue for a little while will be the comparatively slim set of resources out there. Stackoverflow, blogs, tutorial sites are quickly compiling info on all aspects of Swift development, but it'll take some time to reach the saturation point that Objective-C currently enjoys.

In the meantime, a few excellent resources are (despite the name, they're into Swift as well) and The Swift documentation is also a great place to start. 

So what's the answer - Objc or Swift?

Moving forward, Swift. The combination of a cleaner, perhaps more familiar syntax, a more modern language, and superb backwards compatibility makes Swift a great choice to use in your iOS apps, whether you're new to the platform or a long-time Objective-C guru.

Learn Swift in just one month →


Tags: Swift, iOS

Alfie Hanssen

Alfie Hanssen

Senior Mobile Engineer at Vimeo