What this book covers
Chapter 1, What Were They Thinking?, introduces you to Swift 3. Swift is an important language for Apple and its adoption rate has been amazing so far. We will cover the process for how changes to the language are selected and how the community can contribute. In addition, we will cover Swift.org and Apple’s Github page as the repositories for everything that is happening in Swift.
Chapter 2, Discovering New Territories - Linux at Last!, discusses that, while Mac development was your only supported option up until recently, Swift 3 supports developing and running Swift applications on a Linux machine. Our goal is get your development environment setup on both a Mac and a Linux machine by the end of this chapter. We will write our first Linux application together.
Chapter 3, Migrating to Swift 3 to Be More Swifty, will show how to use the Swift Migrator to upgrade our Swift 2.2 projects. We will use a sample project to walk through using the migrator and outline some useful strategies when migrating a Swift project.
Chapter 4, Changes to Swift's Core Will Have Asking for More, will quickly highlight the philosophies for writing good Swift APIs. Afterwards, we will spend the remaining chapter on language improvements for referencing and using Objective-C features in Swift 3 and importing code from Objective-C and C to Swift 3.
Chapter 5, Function and Operator Changes – New Ways to Get Things Done, will examine what's changed in function declaration and usage and how those changes translate into better Swift code. We will also explain operator changes and highlight several that have been removed from the language.
Chapter 6, Extra, Extra Collection and Closure Changes That Rock!, here we are focusing on collection and closure changes in Swift 3. There are several nice additions that will make working with collections even more fun. We will also explore some of the confusing side effects of creating closures in Swift 2.2 and how those have been fixed in Swift 3.
Chapter 7, Hold onto Your Chair, Advanced Type Changes are Here!, We are going to cover a few improvements to the language that you might not use on a regular basis. This chapter focuses on UnsafePointer types, typealiases, and floating point operations.
Chapter 8, Oh Goodness! Look What is New in the Foundation Framework, we will discuss the new Measurements and Units API. We will use several examples to hammer in the concepts so that you will leave this chapter better prepared to handle your measurement challenges in the future.
Chapter 9, Improving Your Code with Xcode Server and LLDB Debugging, we will cover Xcode Server’s capabilities as a continuous integration server and how automated testing can be included to improve your testing workflow. In the second half, we will describe how to use LLDB for debugging your code on Linux.
Chapter 10, Exploring Swift on the Server, shows that Swift running on Linux is a big deal, especially with Linux’s popularity for hosting and running servers. Swift 3 opens the possibilities for developers to create server-side applications using the same Swift that they use to create applications on iOS, macOS, tvOS, and watchOS. By the end of this chapter, you will have a running server written completely in Swift on a Linux box.