Develop Intelligence
iOS Development in Swift
Learn how to build iOS apps using Swift.

The iOS Development in Swift training course teaches developer teams how to build mobile applications on the iOS platform. With more and more people using mobile devices, app development can be both a lucrative and fun professional activity.

This course goes into the various concepts of mobile development including how to use Xcode, a basic primer on Swift, how to build user interfaces, store data, access APIs, and more. Each section describes examples and best practices for mobile development in Swift. At the end of this five-day course teams will have the knowledge to build and deploy their first app to the Apple App Store.

After this course, you will be able to:

  • Correctly use all Swift data types and control flow.
  • Setup unit tests, breakpoints, debugging.
  • Build user interfaces with auto layout, frames, storyboards, segues.
  • Manage local and push notifications.
  • Ensure apps respect memory and power usage best practices.
  • Handle app states, lifecycle and background processes.
  • Correctly utilize localization features to ensure usability across different regions.
  • Deploy and submit to the app store.
This course will be delivered in 5 Days

DI will work with you and your team to define the most appropriate delivery structure, schedule and dates. Structure, schedule and dates will be determined by project schedule, team availability and classroom availability. And of course, it will also be determined by DI’s instructor availability.

  • Getting Started

    • A Brief History of Swift

    • Swift vs. Objective-C

    • Tools of the Trade

      • iOS Devices

      • iOS Frameworks

      • Apple Developer Program

      • Install Xcode

  • Swift

    • Values and Variables

    • Control Flow

    • Functions and Closures

    • Object-Oriented Programming

      • Classes

      • Structures

      • Enumerations

      • Objects

    • Protocols

    • Extensions

    • Error Handling

    • Generics

  • Building Apps with Xcode

    • Xcode Tutorial

    • Creating Projects

    • Writing and Editing Source Code

    • Using the iOS Simulator

  • Unit Testing

    • Introduction

    • Xcode Service

  • Debugging

    • Introduction

    • Breakpoints

    • Debug Gauges

  • Building User Interfaces (UI)

    • Auto Layout

      • iPhones

      • iPads

    • Frames

    • Storyboards

    • Segues

  • View Controllers

    • Passing Data between View Controllers

    • View Controller Life Cycle

    • Recognize User input

    • Recognize Gestures

    • Add Assets

  • Dealing with Data and Tables

    • Table Views

    • Delegates and Data Sources

    • Collection Views

    • Data Models

    • Dynamic Data Views

    • Storing Data

  • Application Patterns

    • Model View Controller (MVC)

    • Target-Action Pattern

    • Subclassing

    • Delegation

  • Graphics and Animation

    • Drawing

      • Core Graphics

      • Points, Coordinates, and Pixels

      • Graphics Context

      • Working with Colors

    • Animation

      • Core Animation

      • Core Animation Blocks

      • Animation Curves

      • Transformations

  • App States

    • Best Practices

    • App Lifecycle

    • Moving to the Background

    • Memory Usage

    • Restoring a State

  • Notifications

    • Local Notifications

    • Push Notifications

    • Notification Center

  • Location Services

    • Core Location Framework

      • Location Accuracy

      • Obtaining Location Information

      • Calculating Distances

      • Using the Compass

    • MapKit

      • MapKit Framework

      • MKMapView

      • Map Regions

      • Mapp Types

      • Device Location

      • Annotations

  • Concurrency

    • Grand Central Dispatch (GCD)

    • Dispatch Queues

    • Operation Queues

  • APIs and Networking

    • Synchronous Downloads

    • Asynchronous Downloads

    • Error Handling

    • HTTP GET and POST Requests

    • Dealing with JSON and XML

  • Localization

    • Resources

    • Language and Region

    • NSLocale

    • Localizing Text

    • Localizing Dates

    • Localizing Numbers

  • Performance, Power, Production

    • Memory Usage

    • Power Usage

    • Measuring Performance

    • Running Apps on a Physical Device

      • Signing Assets

      • Certificates

      • Assigning Devices

  • Deploying Your App

    • Building Your App

    • Icons

    • Archiving

    • Submitting Your App to the App Store

    • App Store Review Process

    • iTunes Connect

Call us at (877) 629-5631