Skip to Content
iOS 10 Swift Programming Cookbook
book

iOS 10 Swift Programming Cookbook

by Vandad Nahavandipoor
December 2016
Intermediate to advanced content levelIntermediate to advanced
456 pages
8h 46m
English
O'Reilly Media, Inc.
Content preview from iOS 10 Swift Programming Cookbook

Chapter 5. Swift 3.0, Xcode 8, and Interface Builder

In this chapter, we are going to have a look at some of the updates to Swift (Swift 3.0), Xcode, and Interface Builder. We will start with Swift and some of the really exciting features that have been added to it since you read the last edition of this cookbook.

5.1 Handling Errors in Swift

Problem

You want to know how to throw and handle exceptions in Swift.

Note

The terms error and exception are used interchangeably throughout this book. When an error occurs in our app, we usually catch it, as you will soon see, and handle it in a way that is pleasant and understandable to the user.

Solution

To throw an exception, use the throw syntax. To catch exceptions, use the do, try, catch syntax.

Discussion

Let’s say that you want to create a method that takes in a first name and last name as two arguments and returns a full name. The first name and the last name have to each at least be one character long for this method to work. If one or both have 0 lengths, we are going to want to throw an exception.

The first thing that we have to do is define our errors of type Error:

enum Errors : Error{
  case emptyFirstName
  case emptyLastName
}
            

And then we are going to define our method to take in a first and last name and join them together with a space in between:

func fullNameFromFirstName(_ firstName: String,
  lastName: String) throws -> String{
  
  if firstName.characters.count == 0{
    throw Errors.emptyFirstName
  }
  
  if lastName.characters ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

iOS 11 Swift Programming Cookbook

iOS 11 Swift Programming Cookbook

Vandad Nahavandipoor
iOS 7 Programming Cookbook

iOS 7 Programming Cookbook

Vandad Nahavandipoor

Publisher Resources

ISBN: 9781491966426Errata PageSupplemental Content