Programming in Swift


An introduction to Swift, through to advanced level, in order to introduce students to developing native apps.

Created By

Andrew G

14-16, 16-18, Adult
Computing and IT

10 HOURS

10 LESSONS

Programming in Swift

professional-learning

Course Overview



This course introduces programmers familiar with different languages to the wonderful world of Swift. Swift is a powerful, statically-typed language and it’s a gateway into developing native apps on Apple platforms. This course starts with learning how and why simple features like loops and error handling are different in Swift. Later on, students will start looking at more complicated features like closures, protocols and first-order functions. Students will use these features in a practical context to solve abstract problems, and the ‘normal' way of doing things will be demonstrated to highlight how Swift makes life as a programmer a lot easier. Students will walk away with the ability to leverage Swift’s powerful features to write concise, safe algorithms and have a strong footing going forward into Apple platform development. Students will get the best results if they’re using a Mac (or a machine running macOS) and Xcode so they can practice outside lessons, although this isn’t necessary to have within lessons if you just want to watch. The lessons increase in conceptual difficulty throughout the course; this is intentional and designed to give you a broad knowledge of what’s possible with Swift. All the code will be available after lessons for you to play around with, and spending time practising outside of lessons is strongly encouraged.

Course Content



10 LESSONS

10 HOURS Total Length

Lesson 1

Ifs, Collections, Loops and Functions

60 minutes

Lesson 2

Structs, Enums and Optionals

60 minutes

Lesson 3

Switches and Pattern Matching

60 minutes

Lesson 4

Closures

60 minutes

Lesson 5

First-Order Functions and Collections

60 minutes

Lesson 6

Generics and the Type System

60 minutes

Lesson 7

Protocols and Extending the Standard Library

60 minutes

Lesson 8

Creating Our Own Abstract Data Types

60 minutes

Lesson 9

Advanced Swift Features

60 minutes

Lesson 10

Problem-Solving: Using Swift to Solve Interview Questions

60 minutes

Key Skills


Swift

Xcode

Programming

Coding

Educator


Andrew G

Programming and Computer Science Educator

Andrew's services range from teaching programming from scratch to helping fix and improve university-level coursework.