Introduction to iOS Programming with Swift

How to write apps for the iPhone and iPad (Four days)

Who it's for


This four day introductory course is for experienced developers who are new to Swift and modern iOS app development.

What you'll learn


This course will introduce you to the fundamentals of iOS 9 app development using Swift.

The first day of the class will get you up to speed with the Swift Programming language. We spend the day in playgrounds, exploring the ins and outs of programming with Swift.

On day two we start building iOS applications. You'll learn how to create a UI and connect it to code using the latest techniques introduced for iOS 9.

The third and fourth days introduce applications with multiple scenes. You will learn a variety of methods of presenting and dismissing scenes while communicating information between the view controllers. We'll also look at table views, navigation controllers, and tab bar controllers. We'll take a quick look at Core Data and web services and finish up with a quick look at Watch Kit.

What you need


You need a Mac running Yosemite or El Capitan with the latest publicly shipping version of Xcode 7.x installed. You'll work with Xcode projects and playgrounds and also the iOS Simulator throughout the course.

Booking Info


For information about booking a course for your group, company, or public event or more details on course content, contact booking@editorscut.com.

Syllabus


Swift Kickstart

Language Fundamentals

Functions

Variables and Constants

Collections

In depth second look at functions

Types and Instances

Classes

Enumerations

Structs

Protocols

(Further details for day one)

Thinking in Swift

Useful Techniques

Protocol Extensions

Iterating Collections

Asserts and Errors

Essential Tools

Chaining, Currying, and Custom Operators

Mutable and Immutable Models

Generics

Map, Filter, Reduce, and Flat Map

(Further details for day two)

Swifty iOS 10

iOS App Fundamentals

Xcode 8

A simple UI

Outlets and Actions

MVVM and Communication

Size classes

Localization

Designables

Multiple Scenes

One app with two scenes

Manual transitions

Segues

Modules

Gestures

Delegates

Multiple Scenes

One app with two scenes

Manual transitions

Segues

Modules

Gestures

Delegates

Separating Concerns

Table Views

Assembling Apps from Pieces

Network Applications

Core Data

JSON

Custom Cells

Passing Info

Collection Views

(Further details for days three and four)