iPhone and iPad Development using Swift 3 and Xcode 8 for iOS 10 Training Course


35 hours (usually 5 days including breaks)


The course assumes some programming experience.


Who should attend?

This 5 day course is for developers who want to learn how to develop applications for iPhone and iPad running iOS 10. Xcode8, Swift3 and iOS 10 introduced significant changes in the way applications are written.

The course is hands on and shows how to develop applications from scratch using the Swift programming language and the Xcode 8 IDE.

During the course a fully functional application will be developed from scratch using Swift.

This course can only be run on Intel based Apple hardware such as a MacBook or a Mac Mini. Delegates need to have registered with Apple and have an Apple ID which is required to download software. Delegates wishing to run the applications developed during the course on an iPhone or iPad using a USB cable will need to register their device with Xcode.

Course Outline

Development environment

  • Development environment requirements
  • Xcode and the iOS SDK
  • Apple Developer Registration
  • Reasons why Applications get rejected
  • Human Interface Guidelines

Xcode iOS Projects

  • Overview of Xcode
  • Creating an iOS project
  • Running on simulator and real devices

Adaptive Layout

  • Storyboards
  • Multiple Device Support
  • Icon Sizing and Device Orientation
  • UI Components
  • Building a User Interface


  • Swift programming language overview
  • Variables, constants and data types
  • Language constructs
  • Using Xcode to develop Swift applications
  • Playground

Swift Classes and Scenes

  • Creating Swift classes
  • Instance variables and initialisation
  • Memory management
  • Strong and weak references
  • Constructor types
  • Protocols, Hashable and Printable
  • Inheritance
  • Creating Scenes
  • Implementing View Controllers
  • Outlets and Actions

Working with Graphics

  • Adding icons and images
  • Using the SpriteKit API
  • Animating Sprites

User Interaction

  • Buttons and handlers
  • Pan gesture recognition
  • Tap gesture recognition

Multiple Screen Applications

  • Table Navigation
  • Tabbed Applications
  • Navigation Controllers

Location Services

  • Position and Altitude
  • Compass Direction

Device Access and Storage

  • File Storage
  • Music Library Access
  • SQLite Database Access


  • Bluetooth API
  • Centrals
  • Peripherals

Speech Framework

  • Speech to text
  • Text to Speech


  • Network Access
  • Serialising and Deserialising JSON
  • REST Web Services

Leave a Reply

Your email address will not be published. Required fields are marked *