Book Image

Swift 3 New Features

By : Keith Elliott
Book Image

Swift 3 New Features

By: Keith Elliott

Overview of this book

Since Swift was introduced by Apple in WWDC 2015, it has gone on to become one of the most beloved languages to develop iOS applications with. In the new version, the Swift team aimed to take its adoption to the next level by making it available for new platforms and audiences. This book will very quickly get you up to speed and productive with Swift 3. You will begin by understanding the process of submitting new feature requests for future versions of Swift. Swift 3 allows you to develop and run your applications on a Linux machine. Using this feature, you will write your first Linux application using the debugger in Linux. Using Swift migrator, you will initiate a conversion from Swift 2.2 to Swift 3. Further on, you will learn how to interact with Cocoa libraries when importing Objective C to Swift. You will explore the function and operator changes new to Swift 3, followed by Collection and Closure changes. You will also see the changes in Swift 3 that allow you write tests easier with XCTest and debug your running code better with new formats as well. Finally, you will have a running server written completely in Swift on a Linux box. By the end of the book, you will know everything you need to know to dive into Swift 3 and build successful projects.
Table of Contents (16 chapters)
Swift 3 New Features
Credits
About the Author
About the Reviewer
www.PacktPub.com
Preface
5
Function and Operator Changes – New Ways to Get Things Done

Floating point changes


Floating-point types are used to hold fractional numbers. The main floating-point types in the standard library are Float and Double. The Swift team created a FloatingPoint protocol to hold common math operations, making it easier for you to create functions that support all of the floating-point types available. In this section, we will cover additions to the FloatingPoint protocol and rounding functions.

Enhanced Floating point protocols [SE-0067]

The current FloatingPoint protocol doesn't provide a full set of features to really conform to an IEEE 754 https://en.wikipedia.org/wiki/IEEE_floating_point#CITEREFIEEE_7542008 type. The changes to the FloatingPoint protocol are meant to expand coverage of the operations that most would expect to be included. A second protocol BinaryFloatingPoint (conforms to FloatingPoint) has also been added to Swift and will be useful for generic programming.

The FloatingPoint protocol now contains most of the IEEE 754 basic operations...