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 ...
Get iOS 10 Swift Programming Cookbook now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.