Announcing UIKit Apprentice (Formerly iOS Apprentice)!

We’re happy to announce that UIKit Apprentice (formerly iOS Apprentice) is fully updated for iOS 14 and is available now! By Chris Belanger.

Save for later

If you’ve been following this site for some time, you’ll know that our flagship book, iOS Apprentice, has launched thousands of people into iOS development ever since it first came out as an epic-length tutorial named “The iOS Apprentice: Getting Started” waaay back in 2011.

Along the way, we’ve added more sections to the book, migrated it from Objective-C to Swift, and tried to make sense of how SwiftUI fits into the picture. In short — this book has seen a lot of changes over the years!

The iOS Apprentice apps, circa 2011. Oh, the skeumorphism…it burns!

With everything that’s changed in the Apple ecosystem in the last few years, we took a step back to evaluate what the iOS Apprentice should look like in 2020.

Although SwiftUI is quickly becoming popular, we know there is still immense value in providing a UIKit-first approach to app building, not just for beginners, but for everyone who wants to master iOS development.

So we’ve kept the great UIKit-focused content in the book you know and love, and simply changed the name to UIKit Apprentice!

Read on to see what’s new in this edition, what’s inside the book and how you can get started reading for free today!

What’s New in The UIKit Apprentice?

With the introduction of SwiftUI, we realized it would be better to keep the focus of our popular iOS Apprentice book on UIKit, and instead write a new, SwiftUI-focused book, SwiftUI Apprentice. And as the SwiftUI Apprentice is poised to be released in just a few months, we wanted readers to be able to make a smart choice when deciding whether to start building apps with UIKit or SwiftUI.

UIKit Apprentice, as the name implies, focuses on UIKit and contains all of the original UIKit content from previous editions — and it’s been updated for iOS 14, Swift 5.3 and Xcode 12!

Here’s a high-level list of the improvements we’ve made in this edition of UIKit Apprentice:

  • Updated for Xcode 12: Now covers new features available in Xcode 12, such as the mini-map!
  • Updated for dark mode / light mode: This edition covers iOS appearances – in fact, you’ll create a full app from scratch taking appearance into consideration!
  • Updated for iOS 14 features: We’ve added in coverage for new features in iOS 14, including the new date picker, using color assets, and updated templates in Xcode 12.

You won’t find outdated information here; we update the book every year from top-to-bottom, making sure everything you learn in the book is current, modern, and up-to-date for the latest version of iOS, Swift and Xcode.

What’s Inside UIKit Apprentice, First Edition

You don’t need any programming knowledge to build an entire game from the ground up. The UIKit Apprentice book will teach you everything you need to know, as it focuses on the essential features of iOS, Xcode and Swift that you need to know, without getting you bogged down with unnecessary details.

You won’t be doing quick example exercises that demonstrate how to do a single feature. Instead, you’ll develop complete, fully-formed apps that are good enough to submit to the App Store!

The book is broken into several sections. Here’s an overview of what you’ll cover in each:

Section I: Getting Started

This section introduces you to the first of the four apps that you’ll build over the course of this book — Bull’s Eye.

You’ll start by building a game called Bull’s Eye. You’ll learn how to use Xcode, Interface Builder, and Swift in an easy-to-understand manner.

This section will teach you how to think like a programmer as you build the Bull’s Eye app, and how to plan your programming tasks. You’ll also learn how to use Xcode, Interface Builder, and even the basics of coding for iOS. This section is really where you’ll learn the fundamentals that act as the building blocks for what you learn later.

To help everyone get started with iOS development, we’ve made this entire first section available for you to read online — for free!

You can start reading here:

Section II: Checklists

This section builds upon what you learned in the first section by introducing you to your second app: Checklists! Checklists takes you from a single-screen app to a multi-screen app where you learn the concepts of navigation flow, displaying data lists, and how to model and persist your data.

For your next app, you’ll create your own to-do list app. You’ll learn about the fundamental design patterns that all iOS apps use, and about table views, navigation controllers, and delegates.

If you want to make any kind of list-based iOS app, this section will get you started with the basics. Even if you aren’t building a list-based app, you’ll cover other basic concepts such as handling the navigation flow from one screen to another (and back again) that would be very useful to an apprentice iOS developer.

Section III: My Locations

With this third section and the MyLocations app, you’ll really start to dig into Swift programming.

For your third app, you’ll develop a location-aware app that lets you keep a list of spots that you find interesting. In the process, you’ll learn about Core Location, Core Data, Map Kit, and much more!

In this section, you’ll review what you’ve already covered, but also learn about using GPS coordinates, displaying data on maps, and using the iOS image picker to take photos using your camera or to pick existing images from your photo album.

This section also introduces you to building apps for Dark Mode – a subject that you’ll deep-dive into in the next section.

Section IV: Store Search

In the final section of the book, you’ll build an app that supports both Light and Dark appearances via the StoreSearch app. StoreSearch shows you how to have separate custom assets and colors for each type of iOS appearance.

Mobile apps often need to talk to web services and that’s what you’ll do in your final app. You’ll make a stylish app that lets you search for products on the iTunes store using HTTP requests and JSON.

In this section, learn how to create custom screens both for specific orientations (landscape vs. portrait) as well as for specific platforms (iPhone vs. iPad). Be prepared to level up a swath of other skills, including: networking, working with remote API endpoints to fetch data needed by your app, and how to parse the fetched data. You’ll also learn how to work with Stack Views, and how to add iPad support to your app.

If that wasn’t enough, this section also leads you through the full app life cycle – from developing the code, testing it, and all the way to submitting to Apple.

By the end of the book, you’ll be experienced enough to turn your ideas into a real app!