Improve your experience. We are very sorry but this website does not support Internet Explorer. We recommend using a different browser that is supported such as Google Chrome or Mozilla Firefox.

Advanced iOS

Take your iOS skills to the next level with this intensive dive into performance tuning, debugging, and exploring a wide range of iOS’ frameworks and APIs.


Work with APIs from all corners of iOS in this intensive 5-day course to build faster, more stable, stand-out apps. Study a broad range of topics from animations and custom drawing to debugging and performance tuning.

Bootcamp Price: $4200

Bootcamp price includes hotel, meals, and a shuttle to and from the hotel.

In the Atlanta area? Interested in commuting to class? Contact to discuss commuting options and discounts.

Who should take this class?

  • iOS developers using Swift with at least 6 months experience are ideally suited for this course.

  • Experience working with view controllers, table views, collection views, and web services is strongly recommended.

What you'll learn:

  • Create custom views, animations, and behaviors across and beyond UIKit.

  • Write robust asynchronous code and understand app performance concerns.

  • Use Swift together with Objective-C harmoniously in the same project.

  • Explore media processing, networking, and data modeling APIs.

  • Debug and troubleshoot performance and memory problems.

  • Use the Combine framework to manage reactive data flows in applications.

How to prepare:

Pre-Course Assignment

There is no pre-course assignment, so long as you consider yourself proficient enough in iOS development to create simple apps without much assistance. 

Xcode and iOS

Please download the latest version of Xcode, which is necessary for the class. You can get the latest version of Xcode from the Mac App Store. iOS 12 is available as an over-the-air update for your iOS device if you’ll be bringing one. Please plan to download Xcode and run OS updates prior to arriving for class. Xcode requires that your Mac be running macOS 10.13.6 or later.

Device Provisioning 

In order to get the best possible experience from the class, we recommend that you bring an iPhone, iPad, or iPod touch with you. Testing the apps that we write in class will be much more fun if you can see them on your device.

*We will be using iOS 12 for all examples and exercises in this class, so devices should be running iOS 12.

If you are unable to provide a device for testing, let us know so that we can talk about which bits you might miss out on.


Performance Tuning

  • Design a well-abstracted, multithreaded API.

  • Find and fix CPU hot spots using the Instruments tool.

  • Create custom Operation subclasses for performing clean asynchronous work.

  • Study thread-safety concerns and resolve them with locks using Grand Central Dispatch.



  • Find memory leaks, abandoned memory, and other problems using Instruments and the Memory Graph Debugger.

  • Track down hard-to-find bugs with LLDB and other Xcode debugging features.

  • Troubleshoot layout problems with the View Hierarchy Debugger.

  • Write unit tests to ensure correctness of your code, and learn testing best practices.


Customizing UIKit

  • Bend collection views to your will with fully-custom collection view layouts.

  • Drive custom interactive view controller transition animations.

  • Authenticate to OAuth2 services and store credentials in the keychain.



  • Work with the UIDocument API for modeling data in document-based apps.

  • Explore wrapping legacy APIs with more modern patterns to help write safer code.

  • Study reactive programming and create reactive pipelines for clean data flow management,, using the Combine framework.


Drawing & Graphics

  • Draw custom views and image data using Core Graphics and UIKit drawing routines.

  • Explore how animation layers are used to build stand-out graphical effects.

  • Add Interface Builder support for your custom views.

  • Filter and process photos with Core Image.



  • Work effectively with Objective-C and Swift in the same project.

  • Understand what does, and does not, cross the Swift/Objective-C bridge.

Press enter to see more results