iOS 9 Application Development for iPhone and iPad Using Swift

Request a Quote for this class

About this Course

This iOS Development using Swift training class provides in-depth coverage on how to build iOS 9 native applications for iPhone and iPad using Swift and Apple's Cocoa framework.

At Course Completion

Upon completing this course, students will:

  • Understand iOS application development architecture.
  • Gain familiarity with Xcode and other Apple development tools.
  • Learn proper use of techniques and patterns in Swift.
  • Design app UIs using storyboards.
  • Explore techniques for custom drawing and animation.
  • Build an app that communicates with a web service.
  • Use best practices for targeting both iPhone and iPad devices.

Prerequisites

  • Substantial previous programming experience using an object- oriented C-based language such as Objective-C, C#, Java, or C++.

Courses that can help you meet these prerequisites:

  • Swift for Experienced Objective-C Programmers
  • Apple Swift Training

 

Course Outline

Introduction

  • iOS Devices
  • iOS Operating System
  • Programming Languages
  • Development Tools
  • iOS SDK
  • Apple Developer Program

Swift (Part I)

  • Introduction
  • Constants and Variables
  • Type Annotations
  • Basic Types
  • Optionals
  • Functions
  • User Defined Types

Unit Testing

  • Introduction
  • XCTest Framework
  • Xcode Service

iOS App Architecture

  • Introduction
  • Model-View-Controller (MVC)
  • View Controllers
  • Storyboards
  • Outlets
  • Actions

Auto Layout

  • Introduction
  • Constraints
  • Insufficient Constraints
  • Misplaced Views
  • Conflicting Constraints
  • Content Hugging and Compression Resistance
  • Size Classes

Swift (Part II)

  • Collections
  • Control Flow
  • Inheritance
  • Initialization
  • Deinitilization
  • Protocols
  • Error Handling
  • Access Control

Storyboards

  • Scenes
  • Segues
  • Moving Data Between Controllers
  • Navigation Controller

Table Views

  • Introduction
  • Data Source and Delegate

Swift (Part III)

  • Computed Properties
  • Property Observers
  • Extensions
  • Function Types
  • Closures

Networking

  • URL Loading System
  • NSURLSession
  • Asynchronous Downloads
  • Strings and Images
  • JSON
  • XML
  • HTTP POST Requests

Local Storage

  • User Defaults
  • Sandboxing
  • Working with Files
  • Archiving
  • UIDocument
  • SQLite
  • Core Data

Multitouch, Taps, and Gestures

  • Introduction
  • Touch Notification Methods
  • Gesture Recognizers

Drawing

  • Core Graphics and Quartz 2D
  • Points, Coordinates, and Pixels
  • Graphics Context

Animation

  • Core Animation
  • UIView Core Animation Blocks
  • Animation Curves
  • Transformations

App States

  • Introduction
  • Best Practices
  • App States
  • App Lifecycle
  • Moving to the Background
  • Memory Usage
  • Background Execution

Notifications

  • Local Notifications
  • Push Notifications

Core Location Framework

  • Basics
  • Location Accuracy
  • Distance Filter
  • Calculating Distances
  • Compass
  • MapKit Framework
  • Localization
  • Introduction
  • Resources
  • Language and Region
  • NSLocale
  • Text, Dates, and Numbers

Running on a Physical Device

  • Introduction
  • Project Configuration
  • Launching an App

Performance and Power Optimization

  • Introduction
  • Measuring Performance
  • Responsiveness
  • Memory Usage
  • Networking
  • Core Location

Deployment

  • Icons and Launch Images
  • Archiving
  • Distribution
  • iTunes Connect

Conclusion