Teaching App Development with Swift

SpaceAdventure

Level 1, Fifteen Lessons

Teach the fundamentals of object-oriented programming with Swift. Guide students in discovering Swift syntax, conventions, modeling with classes, initialization, optionals, data structures, and closures.

The Finished App

Familiarize yourself with the project, and demonstrate the app students will build.

Lesson 1

Introduce basic variable and constant declarations, string interpolation, and printing to the console with print.

Lesson 2

Practice calling functions and using return values. Introduce control flow and Boolean logic.

Lesson 3

Demonstrate using a loop and logical operators to validate user input.

Lesson 4

Create a Swift class. Demonstrate instantiating an object and calling a method.

Lesson 5

Demonstrate how to implement a simple method.

Lesson 6

Practice implementing and calling methods, declaring parameters, and explain Swift access control.

Lesson 7

Practice implementing a class, and demonstrate the relationship between properties and initializers.

Lesson 8

Motivate the need for an array, and introduce array type annotations and creation.

Lesson 9

Practice declaring properties and defining initializers, and associate variables with mutability.

Lesson 10

Practice argument passing, object instantiation and appending to arrays.

Lesson 11

Compare traditional for loops with a for-in loop, and iterate over a data structure.

Lesson 12

Demonstrate pseudo-random number generation and Swift type conversion.

Lesson 13

Motivate the need for optionals, and demonstrate computed properties and optional binding.

Lesson 14

Refactor to illustrate the relationship between variable and constant properties, and initializers.

Lesson 15

Introduce dictionaries, and use a for-in loop to motivate the use of map and a trailing closure.

The course materials only, and not any other content of this web page, are to be used pursuant to a Creative Commons license, as specified in the license information within the course materials.

Trademark Information

The Swift logo, Apple, the Apple logo and other Apple trademarks, service marks, graphics, and logos used in connection with the Swift Education project are trademarks or registered trademarks of Apple Inc. in the US and/or other countries. Other trademarks, service marks, graphics, and logos used in connection with the Swift Education project may be the trademarks of their respective owners. You are granted no right or license in any of the aforesaid trademarks, and further agree that you shall not remove, obscure, or alter any proprietary notices (including trademark and copyright notices) that may be affixed to or contained within the Service.

For further information about proper referential uses of the Swift logo, please review the “Guidelines for Using Apple Trademarks and Copyrights”.