iOS 10 Development with Swift Training

Course #:TP2620

iOS 10 Development with Swift Training

This 5-day course teaches attendees how to build iOS 10 native applications for iPhone and iPad using the Swift programming language (version 3) and Apple's Xcode IDE (version 8).

Objectives

  • Develop a thorough understanding of the Swift programming language
  • Understand iOS application development architecture
  • Gain familiarity with Xcode and other Apple development tools
  • Design app UIs using storyboards
  • Build a network connected app
  • Use best practices for targeting both iPhone and iPad devices

Prerequisites

  • Experience with an object-oriented programming language such as Java, Objective-C, C#, or
  • C++
  • Familiarity with using OS X and an iOS-based device

Duration

5 Days

Outline of iOS 10 Development with Swift Training

1. Introduction

  • iOS Devices
  • iOS Operating System
  • Programming Languages
  • Xcode and Other Tools
  • iOS SDK
  • Apple Developer Program

2. Swift Fundamentals

  • Introduction
  • Playgrounds
  • Statements
  • Constants and Variables
  • Basic Types
  • Conditionals and Loops
  • Optionals
  • Functions
  • User Defined Types
  • Automatic Reference Counting (ARC)

3. Unit Testing

  • Introduction
  • XCTest Framework
  • Xcode Service

4. iOS App Architecture

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

5. Auto Layout

  • Introduction
  • Autoresizing Masks
  • Constraints
  • Insufficient Constraints
  • Misplaced Views
  • Conflicting Constraints
  • Content Hugging and Compression Resistance
  • Variations

6. More Swift

  • Computed Properties
  • Property Observers
  • Inheritance
  • Access Control
  • Type Casting
  • Initialization
  • Deinitialization
  • Collections

7. Storyboards

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

8. Protocols

  • Introduction
  • Optional Members
  • Loose Coupling

9. Table Views

  • Introduction
  • Styles
  • Data Sources and Delegates

10. More Swift

  • Extensions
  • Function Types
  • Closures

11. Error Handling

  • Introduction
  • Representing and Throwing Errors
  • Handling Errors
  • Cleanup Actions
  • Guards

12. Networking

  • URL Loading System
  • NSURLSession
  • Asynchronous Downloads
  • Strings and Images
  • JSON
  • Multithreading

13. Local Storage

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

14. Multitouch, Taps, and Gestures

  • Introduction
  • Touches
  • Taps
  • Notification Methods
  • Gesture Recognizers

15. Drawing

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

16. Animation

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

17. App States

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

18. Notifications

  • Local Notifications
  • Push Notifications

19. Core Location Framework

  • Basics
  • Location Accuracy
  • Distance Filter
  • Calculating Distances
  • Compass
  • MapKit

20. Localization

  • Introduction
  • Resources
  • Language and Region
  • Locale
  • Text, Dates, and Numbers

21 Running on a Physical Device

  • Introduction
  • Project Configuration
  • Launching an App

22. Performance and Power Optimization

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

23. Deployment

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

24. Conclusion

We regularly offer classes in these and other cities. Atlanta, Austin, Baltimore, Calgary, Chicago, Cleveland, Dallas, Denver, Detroit, Houston, Jacksonville, Miami, Montreal, New York City, Orlando, Ottawa, Philadelphia, Phoenix, Pittsburgh, Seattle, Toronto, Vancouver, Washington DC.