Classes available in-person (strict social distancing) or live online with an extended free retake period. See details.

Step-by-Step Training Workbook

# iOS App Development (with Swift) Level 1 Book

## Intro to Swift

Print book shipments are delayed by approximately one week due to coronavirus. There are no delays for ebooks.

We offer bulk order discounts

This book comes free with our App Development Summer Camp Los Angeles class

As the app gold rush continues iOS development is high in demand. This book is designed to get your Swift programming skills up to par as a precursor to our Intro to iPhone/iPad Development book. You'll be guided through the basics of Swift programming as it relates to iOS—all via Apple's XCode software. It is an entry into the world of iOS development.

This training is geared towards the beginning programming student and covers basic syntax and programming concepts. No prior programming knowledge required.

ISBN: 978-1-941333-42-6

##### Section 1
###### Setting Up For Class: Do This Exercise First!
• Setting Up Class Files
###### Variables, Constants & Data Types
• Declaring variables
• Updating variables
• Declaring constants
• Data types
• Type inference
• String concatenation
###### Conditional Statements & Operators
• Conditional statements
• Comparison operators
• Arithmetic operators
• Logical operators
• Arithmetic Operators
##### Section 2
###### Functions
• Simple Functions
• Functions & Parameters
• Returning Parameters
• Tuples
###### Optionals
• Checking for a Nil Value on an Optional
• Optional Binding
• Implicitly Unwrapped Optionals
###### Collection Types: Arrays & Dictionaries
• Arrays
• Creating an Array without an Initial Value
• Dictionaries
###### Loops
• While Loops
• For Loops
• For...in Loops
##### Section 3
###### Classes, Properties & Methods
• Defining Classes & Instantiation
• Properties
• Methods with Parameters
• Methods with Return Values
###### Initializers, Structs, Inheritance & Extensions
• Designated Initializers
• Structs
• Inheritance
• Method Overriding
• Extensions
##### Section 4
###### Adding Playground Classes to an App
• Storyboard, View Controller, & Object Library
• Importing Our Classes into the Project
• Testing the App
###### Protocols
• Defining a Protocol
###### Closures
• Defining a Closure
• Closures with Parameters & Returned Values
• Closures Used for Callbacks
##### Section 5
###### Enumerations
• Creating and using enumerations
• The Switch Statemebt
###### Type Casting
• Setting Up for Type Casting
• Checking Type
• Downcasting
###### Tuples & Type Aliases
• Accessing Tuples via Indexes
• Accessing Tuples via Keys
• Returning a Tuple in a Function
• Type Aliases
##### Section 6
###### Automatic Reference Counting
• Deinitializing
• Strong vs. Weak References
• Creating a User Database
• Creating a User Model
• View Size
• Laying out the User Interface
• The Assistant Editor
• Dealing with the Return
##### Bonus Material
###### Calculating GPA
• Calculating Averages
###### Looping Through Phone Numbers
• Loops
• Arrays & Dictionaries
• Developing a game
###### Putting Your Game in a Real World Application
• Importing Classes into Xcode
• Creating a Single View Application
##### Features of Noble Desktop eBooks
• Searchable, with live text that you can copy and paste.
• Printable.
• eBook graphics are in color (printed books are black and white).
• Widely compatible: We provide the most common eBook formats (EPUB, MOBI, & PDF) so you can load them onto the device or app you choose; such as Mac, PC, iPhone, iPad, Kindle, Android, and more.
• Free updates for the edition you buy. When we make major changes to a book (requiring a new edition), an affordable upgrade option will be available.
• DRM-free: Files are subtly watermarked with your name and email, but we do not restrict the devices or apps you can use to view our eBooks.
##### The Best Way to Enjoy Our Books

Our workbooks are meant to be used while you work on your computer. They typically contain step-by-step exercises that walk you through doing tasks on your computer. An ideal setup would be to have the eBook loaded onto a device (like a tablet/smartphone) or on a second computer monitor, so you can read the book as you work on your computer. You can also print the PDF if you prefer.

##### Which File Format Is Right for You?
###### PDF
• Ideal for printing.
• An exact match to the printed book. If the text reflow of an EPUB or MOBI file is confusing please refer to the PDF.
• PDF is compatible with most devices, but it’s not optimized for small screens. If using a smaller screen you’ll likely want to use the EPUB or MOBI files.
###### EPUB
• The industry standard eBook format which works with all devices, except for the Amazon Kindle. EPUB can be read on Mac, PC, iPhone, iPad, iPod Touch, Nook, Sony Reader, Kobo, Android, and many more.
• Ideal for smaller screens as the layout reflows to fit the current device (at the type size of your choice).
###### MOBI (Kindle)
• Amazon’s format for Kindle devices and Kindle app.
• Ideal for smaller screens as the layout reflows to fit the current device (at the type size of your choice).
• Using an iOS Device such as iPhone & iPad? The Kindle app for Apple iOS devices requires a specialized format which we do not support. While our MOBI will work in the Kindle app, it will not render well on iOS devices. We recommend using the EPUB format with Apple’s iBooks app if reading on an iOS device.
• iBooks (EPUB)
##### Can You Share the eBook or Printouts?

Noble Desktop books are intended for use by you, the owner. They are not intended to be loaned or given to others. The files are subtly watermarked with your name and email, but we do not apply any DRM. You can copy your eBooks to any of your own devices without restriction. You can print the PDF files for your own use, but not to give to others. You cannot sell used eBooks. Ownership is solely yours and cannot be transferred to someone else.

Teachers and training centers wishing to print copies for students should email for licensing options and pricing.

##### Buying an eBook for Someone Else
• When you buy an eBook for yourself, it will be added into your account. It will be watermarked with your information and is intended for use only by you.
• You can purchase eBooks for someone else, such as a friend or colleague. Schools and training centers can purchase eBooks for their students (be sure to apply for teacher pricing).
• When buying eBooks for someone else, you will receive an eBook voucher code. Send that code to the recipient and they can redeem it. An eBook voucher code can be redeemed once, for the specific book you purchase for them.
• The recipient of the eBook voucher code will need to log into their Noble Desktop account, or create a free account. In their account they will enter the code on their My eBooks page and the eBook will be added immediately into their account.

## Why Our Books Are Unique

Our books are packed with step-by-step exercises that walk you through projects. You’ll learn by doing exercises, not reading long explanations. The goal is to give you hands-on practice with the program, getting you started quickly with the things that are most important for real life work.

### Buy the iOS App Development (with Swift) Level 1 Book

Print book shipments are delayed by approximately one week due to coronavirus. There are no delays for ebooks.

We offer bulk order discounts

This book comes free with our App Development Summer Camp Los Angeles class