Training

Swifty iOS


This multi-day introductory course is for experienced developers who know Swift but are new to Swift-based iOS app development with UIKit.

Contact us at inquiries@dimsumthinking.com to book or inquire about this course for your group, company, conference, or public event.

What you'll learn


The first portion of the class reviews the fundamentals of Swift. We then create a single view application and learn to communicate among elements of the GUI, source code, and model. We take advantage of advances in Xcode to position elements and send information back and forth between views. We'll support table views and end with a look at immutable models, generics, and a deeper dive into map and flat map.

What you need


You need a Mac running the latest version of Xcode. You'll work with Xcode projects and the iOS Simulator throughout the course.

Syllabus Highlights


Meet Xcode

Functions

Variables and Constants

Collections

Classes

Enumerations

Structs

Protocols

Higher-Order Functions

Map for Arrays

Filter

Reduce

One Scene

Autolayout

Stack View

Free Functions

Subclasses

Protocols

Immutable Model

View Model

Delegates

Closures

Two Scenes

A Second Scene

Navigation

TextField Delegate

Delegate

Closure

Immutable Model

Create the Model

Mutating Methods

Non-mutating methods

Generic Model

Table View

Deleting and Moving Items

Inserting Items

Detail View

Tabs

Monads

Higher-Order Functions

Map for Arrays

Map for Optionals

Map for Result

FlatMap for Arrays

FlatMap for Optionals

CompactMap

FlatMap for Result

The Writer Monad

Repeatable RNG

Mapping RNG

FlatMapping RNG

State

Fetching Resources

Future

Pure