All videos. All books. One low price.

Get unlimited access to all video courses and books on this site with the new raywenderlich.com Ultimate Subscription. Plans start at just $19.99/month.

Home iOS & Swift Tutorials

How to Get Started Building iOS Apps

Want to write your first iOS app? Check out our free book and video content to help you get started building your first iOS app and learn about the Swift language along the way!

5/5 1 Rating

Building your first app for the iPhone or iPad can seem daunting. The Apple ecosystem can seem very closed-off, and it can sometimes feel like things are changing really quickly with the recent introduction of SwiftUI, Combine and other new technologies in iOS.

But no matter what app you want to build, there are fundamental concepts that you’ll need to know as you build your development skills and start to code more and more complex apps.

We’ve collected the best courses and materials below to help you get started building iOS apps, even if you haven’t ever written a single line of code in your life!

Getting Started with iOS Development

There’s very little you need to get started writing apps for iOS:

  • A Mac computer with an Intel/ARM processor: Any Mac that you’ve bought in the last few years will do, even a Mac mini or MacBook Air.
  • Xcode 12 and Swift 5.3: Xcode is the main development tool for writing code in Swift. You’ll need Xcode 12 at a minimum, since that version includes Swift 5.3. You can download the latest version of Xcode for free from the Mac App Store.

That’s it! You don’t even need a physical iPhone or iPad to get started, since most apps you’ll want to build can be run right inside the Simulator, which is a software version of an iPhone or iPad that runs right on your Mac.

It used to be the case that you needed a paid Apple Developer account, but that hasn’t been the case for years. You’ll only need to get a paid account when the time comes to actually publish your apps to App Store. You can build all of the apps you want and run them locally on your Mac or on your own devices without a paid account.

iOS Learning Paths

Because it can be challenging to know where to start, we’ve created iOS Learning Paths, which are curated collections of our video courses that start slowly and build on each other, bit by bit, to introduce you to new concepts and help you learn how to apply those concepts in practice.

If you’re new to iOS development, we recommend getting started with the iOS and Swift for Beginners learning path, which contains the following courses:



Your First iOS and SwiftUI App

If you’re a complete beginner to iOS and SwiftUI development and wondering how to get started, this is the course for you. This first course in our iOS and Swift learning path is free, to help you get started today!



Your First iOS and UIKit App

Now that you’ve built your first app using SwiftUI, you’ll build that app again – but instead of using SwiftUI to build the user interface, you’ll learn how to use UIKit, Apple’s older but still very popular framework for building apps.



Programming in Swift: Fundamentals

Learn about Apple’s open source programming language, Swift, through hands-on examples! Take a deep dive into the Swift language, learning about core Swift concepts like loops, collections, types, optionals, functions, classes, and more.



Your Second iOS and SwiftUI App

Use the knowledge you’ve gained from creating a SwiftUI app, and learning the fundamentals of Swift, to create a more complex app: a task list!



Programming in Swift: Functions and Types

Gain a deeper understanding of functions, practice using closures, and build your skills with named types.

The video courses are designed in a modular fashion, and they take one small portion of your app and build it up, block-by-block. Then once you’ve built an app, you’ll then switch to a course that talks more about the Swift language in detail to help you build up your knowledge. Then once that’s done, it’s back to building more apps to see that knowledge in action.

It’s this back-and-forth structure between theory and practice that helps you build iOS apps quickly, while gaining an understanding what’s going on underneath the hood.

iOS Beginner Books

The video courses are excellent for those who like the modular approach. But for those people who enjoy a deeper dive into content and want to approach iOS app development in a more linear, integrated fashion, then our iOS app development books are the ideal starting point.


UIKit Apprentice

In our best iOS beginner book, the UIKit Apprentice, you’ll build several apps as you cover three important areas in parallel: programming concepts, iOS app building concepts, and Swift programming language concepts. Just like the video courses, you’ll take each of these concepts in small, bite-sized pieces, and build up several apps that increase in difficulty as you progress.


Swift Apprentice

And as you work through the UIKit Apprentice, you’ll want to keep the companion book, Swift Apprentice, close at hand. This book gives you comprehensive coverage of the Swift language, so as you work through the UIKit Apprentice and have questions about a paticular language feature in Swift, you’ll be able to use the Swift Apprentice as a guide to coding in Swift, and even explore the language in more detail if you work through the included excercises and challenges in the book – with complete solutions if you get stuck.

What About SwiftUI Books?

If you’re interested in learning more about building apps in SwiftUI, you’re in luck: we’re currently building out the next generation of books for getting started with SwiftUI development, the SwiftUI Apprentice. It’s currently being written and we plan to have it released in early 2021.

In the meantime, we recommend getting started with our SwiftUI video series, Your First iOS and SwiftUI App, and Your Second iOS and SwiftUI app. You can also find a ton of other content in the Ultimate Beginner subscription covering SwiftUI development, including working with maps and locations, UI design, networking, persistence and more.

Get Started Building iOS Apps for Free

To give you a head-start with all of this content, we’ve made select portions of our books and videos free to get started! These are our recommended starting points:

  • Your First iOS and SwiftUI App [Free]: We’ve made this entire first video course in our iOS and Swift learning path free for you to try. You’ll build an entire app from scratch, and even learn how to deploy it to your own device to show off to everyone!
  • UIKit Apprentice: Getting Started [Free]: The entire first section of the UIKit Apprentice is also free for you to enjoy. This section takes you through building the same app as you do in the video course, and touches on lots of elements of the Swift language, software development tactics, and polishing the UI of your app to make it shine!

We recommend picking one choice above, either the book or the video course and following it right to the end to get the most value for your time. Then, when you’re done, go check out the other resource as well. You don’t have to follow along this time, but you’ll probably pick up a few tips and reinforce your understanding even more!

Where to Go From Here?

We hope these free resources give you a great start with building your own apps for iOS – and that they serve as a great launching-off point for taking your development skills to the next level.

And when you’re ready to take your iOS development further, the Ultimate Beginner subscription includes all of the books and videos you’ll need to learn more about building iOS apps and publishing them for all to enjoy – and even get your first job as an iOS developer.

If you’re interested in learning more about the Ultimate Beginner subscription, we’ve got a handy post here explaining what’s included, or you can head over to our main Ultimate Subscription page to see which subscription is right for you!

Enjoy – and best of luck in your iOS app-building adventures!

Average Rating

5/5

Add a rating for this content

1 rating

More like this

Contributors

Comments