Choose your language:

Hong Kong
New Zealand
United Kingdom
United States

iOS 10 App Development Using Swift

Course Code



5 Days

  • Basic knowledge of programming in Swift is recommended to get the most out of this class.
  • Object Oriented Programming experience is recommended
  • Basic familiarity with Mac computers and working in Mac OS X is recommended
This course is designed to train both novice and experienced developers how to create native iOS 10 Apps for iPhone, iPad and iPod using the Swift programming language. Created by experienced iOS developers, the course places a very strong emphasis on hands-on learning through a multitude of exercises and demonstrations. Students will be guided through a wide variety of in-class Labs specifically designed to offer practical solutions to common problems that address real-world production needs. Topics covered include: Multi-View Apps, Design-Patterns, Data-Persistence, Core Data, Web-Services, JSON and XML parsing, Maps and Location Services, working with Images and Animations, and handling Gestures.

An in-depth look at the Xcode 8 IDE and its many features and tools will also be included.
This course is designed for experienced programmers who have some basic familiarity with Swift.

Upon completion of this course, participants will be able to:

  • Learn to use Xcode 8's Interface Builder to design and build iOS App Interfaces
  • Utilize iOS Controls such as Buttons, Switches, Sliders, and Pickers
  • Build multi-screen Apps using Navigation Controllers, the Master-Detail (“Drill-Down”) template, and the Tab-Bar Template
  • Data Persistence – saving data on iOS devices using Text Files and Core Data
  • Make calls to Web-Services from an iOS App
  • Parse incoming JSON and XML data streams
  • Work with Maps and Location Services to make location-aware Apps
  • Enable Gesture Recognition to facilitate Swipes, Taps, Pinches, and Pans
  • Use Auto-Layout and Size Classes to properly configure Apps to support various screen sizes, device orientations (Portrait and Landscape) and iOS devices: iPhone 4's, 5's, 6's, and 7's, iPads, etc
Creating a new Project in Xcode
Designing an App interface using Interface Builder
Working with the Objects Library and the Attributes Inspector
Running and previewing the App using the iOS Simulator

Adding Interactivity
Writing Swift code in the ViewController file
Creating IBActions and IBOutlets
Activating Controls: enabling Buttons, Switches and Sliders
Using the Size Inspector
Creating an Alert with action Buttons from code
Working with Conditionals for basic Control-Flow

Enabling User Input
Working with Textfields to read in user inputted data
The iOS Keyboard and special alternate keyboard layouts
Alternate methods for dismissing the Keyboard
Using the Connections Inspector
More Control-Flow

Working with Image Assets & App Icons
Creating a Custom Icon for your App
Creating a Custom Splash Image for your App
Managing Image Assets: Regular & Retina

Writing Classes in Swift
Declaring a Swift class in a separate file
Declaring Stored and Computed Properties
Creating Instance Methods
Control Flow with the Switch Statement

Using the PickerView
Single Component Pickers
Multi-Component Pickers
Working with the Date Picker and the NSDate class

Using Storyboards & Creating Multiview Applications
Using Navigation Controllers
Working with Segues
Passing Data between View Controllers
Creating Bar-Tab Application

Using TableViews
Creating regular and Multi-Sectioned TableViews
Drill-Down menus
Master-Detail scheme
Creating custom TableView Cells

Using Collection Views
Modifying Grid Layouts
Creating Custom CollectionView Cells
Enabling Cell-Tap Navigation to Detail Screens

Creating Views from Code
Initializing Objects with Code
Views, subviews, the Superview
The Subviews auto-array and View Index
Wiring up Views to IBActions using code

Detecting and Handling Gestures
Swipe Gesture
Tap Gesture
Pinch Gesture
Pan Gesture
Rotation Gesture
Implementing Affine Transformations

Data Persistence
Working with NSFileManager and the iOS File Directory
Saving Property Lists
Using Databases with the sqlite Library
Working with Core Data

Maps, Core Location and Location Services
Displaying User Location on Map
Creating Annotations & Pins
Switching Map Types
The MKMapViewDelegate Protocol

Web Services
Establishing an NSURL connection
Making an NSURLConnection Request
Reading returned XML & JSON data
Parsing incoming XML with NSXMLParser
Parsing incoming JSON Data

Integrating your App with Social Media
Posting to Facebook and Twitter from within your App
Attaching Photos, URL's

Universal Apps - Auto-Layouts, Handling Device Rotations, and Size Classes
Working with Auto-Layouts
Implementing Size Classes
Handling Aspect Ratio Constraints

Application Life Cycle & View States/Life Cycle
Understanding Application States
Working with a ViewController's Life-Cycle
Creating Local Notifications

Unit Testing
Using the XCTest Framework
Creating unique tests for specific funtionalities
Making Test Assertions
Creating performance-measurement tests

Submitting to the App Store
The iOS Developer's Center
Creating App Certificates, Identifiers and Profiles
Archiving the Project
Ad-Hoc and App-Store Distribution
Send Us a Message
Choose one