About This Title

Pages: 670
Published: September 2020
ISBN: 9780983066989
In Print

A Swift Kickstart, Second Edition

Introducing the Swift Programming Language

by Daniel H Steinberg

A Swift Kickstart is the perfect book for the experienced developer who wants to get serious about learning the Swift programming language.

As the language matures and improves, this book changes to reflect the latest best practices and coding style. This second edition to the best-selling Swift introduction has been updated to the very latest public Swift 5.3 release.

Working your way through this book is a great way to learn the language of the iPhone, iPad, Mac, Apple Watch, and Apple TV.


This work was written and produced entirely by the author. We are proud to be distributing it.

eBook Formats:

  • PDF for desktop/tablets

  • epub for Apple Books, e-readers

  • mobi for Kindle readers

Get all eBook formats here for $30.00 (USD)

Add to Cart we accept visa, mastercard, amex, discover, paypal


It’s never been easier to get started with Swift as you work along using either Swift Playgrounds or Xcode playgrounds. This means you can code along on a Mac or an iPad.

The book begins with an introduction to basic components of programming in Swift: functions, variables and constants, collections, and types from the Swift Standard Library.

In the second part, we create and use our own enumerations, structs, classes, and protocols. You’ll learn how to take advantage of value types and learn the Swifty way to craft your code.

The third part introduces you to error handling, and digs deeper into functions in Swift, generics, and higher-order functions.

Before you know it you’ll find yourself fluent in the language used to write to Apple platforms and beyond.

What You Need

You need a Mac or an iPad running the latest version of Xcode or Swift Playgrounds.

Source code, Errata, Typos, Suggestions

Resources

Releases:

  • P1.2 2021/11/16
  • P1.1 2021/08/30
  • P1.0 2020/09/09

Contents & Extracts

  • Let’s Get Started excerpt
    • Swift Playgrounds
    • Xcode Playgrounds
    • Code Conventions
    • Links and Credits
    • Version History
    • Road Map
  • Functions
    • No Parameter, No Return
    • Return Values
    • Single Parameter
    • Overloading
    • Default Values
    • External Parameter Names
    • Multiple Parameters
    • Variadic Parameters
    • The print() Function
    • Returning Tuples
    • So…
  • Variables and Constants
    • Inferring Type
    • Let
    • Var
    • Using Variables and Constants
    • Storing Functions
    • Type Alias
    • Numeric Types
    • Nil
    • Nil Coalescing Operator
    • if let
    • So…
  • Collections
    • Create Arrays
    • Create Modifiable Arrays
    • Modify Arrays
    • Enumerate Arrays
    • Value and Reference Types
    • Optionals and Dictionaries
    • Create Dictionaries
    • Modify Dictionaries
    • Enumerate Dictionaries
    • Sets
    • Strings
    • So…
  • Enumerations
    • Create Enumerations
    • The switch Statement
    • Methods excerpt
    • Computed Properties
    • String Raw Values
    • Numerical Raw Values
    • Associated Values
    • Binding Associated Values
    • Previews
    • Value Types
    • Option Sets
    • So…
  • Structs
    • Create Structs
    • Stored Properties
    • Computed Properties
    • willSet() didSet()
    • CustomStringConvertible
    • Equatable
    • Value Types
    • Methods
    • Custom Operators
    • So…
  • Classes
    • Create Classes
    • Reference Types
    • Initializers
    • Subclasses excerpt
    • Methods
    • Optional Properties
    • Failable Initializers
    • Optional Chaining
    • Loading and Unloading
    • Composition
    • So…
  • Protocols
    • Create Protocols
    • Conforming to a Protocol
    • Self
    • Properties
    • Polymorphism
    • Generics
    • Protocol Extensions
    • Protocol Extensions Gotcha
    • Access Levels
    • More Access Levels
    • So…
  • Errors
    • Examples
    • Optionals
    • Asserts
    • Throwing Errors
    • Catching Errors
    • Defer
    • Structs
    • Enumerations
    • MultipleCatches
    • Rethrows
    • Result
    • So…
  • Flexible Functions
    • Function Parameters
    • Reference Types
    • inout Parameters
    • Return Values
    • Extensions
    • Mutable Model
    • Non-Mutable Model
    • Generics
    • Conditional Conformance
    • So…
  • Higher-Order Functions
    • Types
    • Returning a Function
    • Returning a Closure
    • Consuming a Closure
    • Custom Operators
    • Mapping Arrays
    • Map
    • Filter
    • Reduce
    • Flat Map
    • Capture Lists
    • So…

Author

Daniel H Steinberg is the author of more than a dozen books including the best selling books A Functional Programming Kickstart, A SwiftUI Kickstart, and “Dear Elena:“https://gumroad.com/l/DearElena. He has written apps for the iPhone and the iPad since the SDKs first appeared and has written programs for the Mac all the way back to System 7.

Daniel presents iOS, Functional Programming, SwiftUI, and Swift training and consults through his company Dim Sum Thinking. When he’s not coding or talking about coding for the Mac, the iPhone, and the iPad he’s probably cooking, baking bread, or hanging out with friends. Details on his training and speaking are on the Dim Sum Thinking website.

eBook Formats:

  • PDF for desktop/tablets

  • epub for Apple Books, e-readers

  • mobi for Kindle readers

Get all eBook formats here for $30.00 (USD)

Add to Cart we accept visa, mastercard, amex, discover, paypal

Related Titles:

About This Title

Pages: 670
Published: September 2020
ISBN: 9780983066989
Edition: 1
In Print