Swift: A Step-By-Step Guide

Rosie Allabarton, contributor to the CareerFoundry blog

Do you keep hearing about Swift? Want to know more about it? Then you’ve come to the right place! If you’re thinking of dipping your toe into the world of web development and are casting an eye on

Today we’re going to give you a complete introduction to what exactly Swift is, and why it’s so important for app developers. Not only that but we’ll be providing info on the best places to learn as a beginner, a list of great online resources on iOS development and mobile app programming, and the low-down on what you can use this sought-after programming language for.

  1. What is Swift?
  2. Swift vs Objective-C
  3. Why you should learn Swift
  4. Where to start when learning Swift
  5. Final thoughts

1. What is Swift?

Swift is a general-purpose, multi-paradigm, compiled programming language created for iOS, OS X, watchOS, tvOS and Linux development by Apple Inc way back in 2014. It is an alternative to the Objective-C language, which used to be the recommended and most popular language for building apps for Apple’s ecosystem of devices.

Named after the bird (which is among the fastest fliers in the animal kingdom), this language was developed to be a faster alternative to Objective-C. Other than speed, it offers many other advantages over Objective-C, including ease of learning, safety, requires less code, is interactive, among other things.

For beginners or those completely new to the field, next I’m going to explain Swift and and Objective-C in more detail, so you know the advantages and disadvantages of each.

A Swift developer tests an image app on their smartphone.

2. Swift vs Objective-C

Compared to Objective-C, Swift has a simpler syntax that makes it easier to learn for beginners or for anyone coming from another programming language. The language took language ideas from Objective-C, Rust, Haskell, Ruby, Python, C#, CLU, and far too many others to list. This means that programmers coming from other languages or from other platforms (such as web development) will find a lot of concepts in Swift similar to what they were used to.

It’s is also easier to read and maintain than Objective-C. In Objective-C, you have to maintain two code files for each class you write—a header file with a .h extension and an implementation file with a .m extension. Sometimes changes made in one file affect the other, so you have to make sure to keep the files in sync. Swift, just like other programming languages like Java, C#, JavaScript, etc. manages with just one file.

Objective-C’s syntax is quite verbose. It is also quite different from other programming languages. Take the below code comparison as an example. The first two statements shows some code in Objective-C and the other two statements shows the same code in Swift.

Objective-C:

NSString *str = @”hello,”; str = [str stringByAppendingString:@” world”];

Swift:

var str = “hello,” str += “ world”

If you are coming from another programming language, you will be able to understand the second piece of code as it is similar (with slight differences here and there) to how variables are declared in other programming languages. Even for a beginner, the second example code seems less intimidating than the first.

3. Why you should learn Swift

While still a relatively new programming language, Swift’s popularity and adoption has been increasing faster than many others. It is now the most popular language to develop for Apple devices. Some popular apps built using Swift include Lyft, Khan Academy, WhatsApp, LinkedIn, Strava, Yahoo Weather, and Hipmunk.

Because it was open sourced by Apple, its use has spread to include development for other platforms other than Apple devices. This is a huge step-up from Objective-C, which could only be used on a Mac OS machine. Swift was released under the Apache 2.0 license, which means developers can use it as they like—even in commercial products.

A benefit of Swift is that it can serve as both a forward-facing language as well as a server-side one. For a product like Facebook, being a full-stack language is extremely beneficial; apps and servers can speak to one another seamlessly, and it potentially gives the company a wider scope to write APIs for services. What’s more for those who learn it, average full-stack developer salaries among the highest around.

Like any healthy programming language this one is still evolving, and it will be interesting to see what it grows up to be and what it will be used for in the future. Since its announcement at WWDC 2014, Apple developers have continued working on it, releasing incremental versions.

In 2016 Swift 3.0 brought portability, meant to make it more portable to other platforms. Whatever the future has in hold, its growth and popularity has increased job demands for it. Ranking highly in the StackOverflow Developer Survey on the “Loved” and “Wanted” lists, it’s definitely a good time to consider becoming a Swift developer.

4. Where to start when learning Swift

There are numerous resources you can use when learning this language. We can’t give you an exhaustive list, but we’ll mention some resources that you might find useful.

  • Official Apple Documentation—The Swift website is a great place to start to find out about the language and to also keep abreast of new developments. You can also learn from the free Swift book from Apple. You can read it online or download an iBooks version for offline viewing. To get started building your first iOS application, you can check out this tutorial that shows you how to build an app from scratch.
  • Each year, Apple hosts the World Wide Developer Conference, where they announce new devices and changes to their SDK. They also hold different talks that teach developers how to implement the newly introduced libraries and technologies. Videos of these talks are available on the WWDC website. They are a valuable resource to developers.
  • Be sure to read through the design guidelines for whatever platform you want to build for. For iOS, there is the iOS Human Interface Guidelines, for OS X, there is the OS X Human Interface Guidelines, for tvOS, there is the Apple TV Human Interface Guidelines and for watchOS, there is the Apple Watch Human Interface Guidelines. These are documentation you will be referring to repeatedly throughout your career as an iOS developer.
  • Blogs and Tutorials—For tutorials on Swift and iOS development these are the most popular blogs: Ray Wenderlich, AppCoda, and NSHipster.
  • Newsletters—These are great to keep up with the latest news, and also to discover great articles and tutorials on Swift and iOS development: iOS Dev Weekly, This Week in Swift, and Swift Weekly.
  • You can also find some free and premium courses online to learn from. Some of them are: Hacking with Swift is a book that is free to read online, with premium options for offline viewing, Coursera offers some courses on iOS development that are free to take with premium options for code review and certifications, Udacity offers free video courses on iOS development with premium options for mentorship and certification.

5. Final thoughts

As this article has shown you, not only is Swift future-facing and an improvement on Objective-C in terms of iOS development, it’s also easier for beginners to learn. As is typical with learning to code, there is a whole host of different ways to learn all about it, from online bootcamps and tutorials, to books and documentation.

What You Should Do Now

  1. Get a hands-on introduction to web development with a free, 5-day short course.

  2. Take part in one of our live online web development events with industry experts.

  3. Talk to a program advisor to discuss career change and find out if web development is right for you.

  4. Become a qualified web developer in 4-7 months—complete with a job guarantee.