• Online, Self-Paced
Course Description

Swift is a new programming language for building OS X and iOS applications. It is based on Objective-C, but uses features from a range of different languages. In this course, you'll learn how to use the features of the Swift language. You'll also learn how to use types and operators, implement program flow, work with functions, and define and work with enumerations, structures, and classes.

Learning Objectives

Getting Started with Swift

  • start the course
  • describe at a high level the Swift language and structure of a Swift program
  • describe how to use Swift Playgrounds in Xcode
  • describe how to use the Swift REPL in Xcode

Data Types and Operators

  • describe the use of constants and variables in Swift
  • use numeric data types in Swift
  • use string and character data types in Swift
  • use built-in functions to convert values to different types in Swift
  • use basic operators in Swift
  • use the closed range and half-open range operators in Swift
  • use logical operators in Swift
  • use optional values in Swift


  • work with arrays in Swift
  • work with ways to create dictionaries in Swift
  • work with modifying dictionaries in Swift
  • work with tuples in Swift

Control Flow

  • use if and if-else statements in Swift
  • use switch statements, including switch with range matching
  • use switch statements with range and tuple matching and value binding as well as where
  • use while and do while loop statements in Swift
  • use for in loop statements with closed and half-open ranges and the stride function in Swift
  • use the break, fallback, and continue statements in switch statements and loops in Swift programs


  • define and call functions in Swift
  • use different combinations of function input parameters and return values in Swift functions
  • use external names when defining functions

Defining Enumerations, Structures and Classes

  • use enumerations in Swift
  • use structures in Swift
  • compare classes with structures and define classes in Swift
  • implement initialization for classes, structures, and enumerations in Swift

Practice: Techniques

  • practice basic programming techniques in a Swift program

Framework Connections

The materials within this course focus on the NICE Framework Task, Knowledge, and Skill statements identified within the indicated NICE Framework component(s):

Specialty Areas

  • Software Development