This course is available as part of the Professional subscription. To learn more click here

Advanced Swift: Error Handling

May 28 2019 · Video Course (21 mins) · Advanced

Production code is all about handling errors: programming errors, user input errors, asynchronous errors. This course covers the error fundamentals you need to know.


  • Swift 5, iOS 12, Xcode 10


2:48 Free

Robust error handling is a hallmark of high-quality, production code. Let's learn the many ways we can do this.


Optionals are a great way of handling superficial errors. Asserts and preconditions can trap programming errors.


In this video, learn about how the native error system lets you propagate error information with ease.


Let's take a look at how you can define useful errors that let clients take appropriate action in this video.


App developers deal with errors from UIKit and other Objective-C libraries. Find out how they work with Swift.


Using a result type is a great way to deal with asynchronous results that may end in error. We explore this useful algebraic type.


Add a couple of methods with proper error handling to a File abstraction that uses unsafe Swift to interop with posix and behaves like a Sequence.




Correct error handling is life or death important in many contexts. Apply the concepts you learned here in your app today.


Who is this for?

This course is for developers interested in getting a deeper understanding of the Swift language. It expects you to be comfortable with the basic syntax of Swift and to have perhaps written an app or two. You should be familiar with basic types in the Swift standard library.

Covered concepts

This course focuses on:

  • How to express errors
  • try/catch basics
  • Obj-C errors
  • Result types
  • Optionals
  • Asserts