Preface
[ 2 ]
Chapter 3, Data Wrangling with Swift Control Flow, says that programming is all about
making decisions; therefore, this chapter explores how to make a decision on the basis of
information gained and how to alter the control flow of the code. You can learn how to
conditionally execute code withif/else statements, control the flow of execution of your
code with switch statements, and then loop the code by understanding how to use the for
and while loops. Then, you will understand how to handle Swift errors with the try,
throw, do, and catch statements, and also how a defer statement can be useful to change
state once a function's execution is complete or to clean up values that are no longer needed.
Chapter 4, Generics, Operators, and Nested Types, provides you with an understanding of two
of the advanced features of Swift, which are generics and operators. Using these features,
you can learn to build functionalities that are flexible and well defined, and also understand
how nested types allow logical grouping, access, and namespacing for your constructs.
Chapter 5, Beyond the Standard Library, takes you on a journey to explore the functionalities
beyond the standard library, provided by frameworks such as Foundation and UIKit.
Learning to use these functionalities will help you make full use of the Swift language.
Chapter 6, Swift Playgrounds, gives a total understanding of using Swift Playgrounds and
explores advanced features, apart from those explored in the initial chapters, to create fully
interactive experiences.
Chapter 7, Server-Side Swift, covers a totally different aspect of Swift programming, server-
side programming with Swift. Also, you can gain an understanding of how to run Swift on
Linux by installing the Swift toolchain, learn to use a web server framework to build a REST
API, and host your API via a hosting service. Also, you can learn to accomplish your tasks
easily by understanding how to use Vapor, one of the most popular frameworks in Swift 4.
Chapter 8, Performance and Responsiveness in Swift, concludes the book by exploring the
more advanced concepts of Swift programming to gain an understanding of how certain
Swift types are implemented and their performance characteristics. Also, it explains how to
perform asynchronous tasks using Grand Central Dispatch. Then, it explores the
multithreaded environment available on all Apple platforms and how to enhance the
performance profile of your Swift constructs to build a fast and responsive app.