EIEIOTECHNOVATION
← Training programmes

EIEIO / AUTOMATION & EMERGING TECHNOLOGY

iOS Application Development - Intermediate

Course outline

3 days

Duration

3 days

Overview

This is an intermediate course from iOS Application Development - Introduction. During this course, you will create a reasonably complex iOS program. In the process, it covers storyboards, table view table view controller, editing table view, navigation controllers, camera, auto layout, gesture recognisers, push view controllers and modal view controllers. You will also learn how to use unit tests and debugging tools.

Course Prerequisites

Knowledge of a programming language is required. It is recommended for participants to go for the iOS Application Development - Introduction course prior to attending this course.

Day 1

Getting Started

Get the tools

Learn the essentials of Swift

Differentiate between a constant and a variable

Know when to use implicit and when to use explicit type declarations

Understand the advantage of using optionals and optional binding

Differentiate between optionals and implicitly unwrapped optionals

Understand the purpose of conditional statements and loops

Use switch statements for conditional branching beyond a binary condition

Use where clauses to impose additional constraints in conditional statements

Differentiate between functions, methods, and initializers

Differentiate between classes, structures, and enumerations

Understand syntax for (and basic concepts behind) inheritance and protocol conformance

Determine implicit types and find additional information using Xcode’s quick help shortcut (Option-click)

Import and use UIKit

Build a basic UI

Create a project in Xcode

Identify the function of key files that are created with an Xcode project template

Open and switch between files in a project

Run an app in Simulator

Add, move, and resize UI elements in a storyboard

Edit the attributes of UI elements in a storyboard using the Attributes inspector

View and rearrange UI elements using the outline view

Preview a storyboard UI using the Preview assistant editor

Lay out a UI that automatically adapts to the user’s device size using Auto Layout

Connect the UI to code

Explain the relationship between a scene in a storyboard and the underlying view controller

Create outlet and action connections between UI elements in a storyboard and source code

Process user input from a text field and display the result in the UI

Make a class conform to a protocol

Understand the delegation pattern

Follow the target-action pattern when designing app architecture

Day 2

Work with View Controllers

Understand the view controller life cycle and when its callbacks occurs, such as viewDidLoad, viewWillAppear and viewDidAppear

Pass data between view controllers

Dismiss a view controller

Use gesture recognizers as an additional level of generating events

Anticipate object behavior based on the UIView/UIControl class hierarchy

Use the asset catalog to add image assets to a project

Implement a Custom Control

Create and associate custom source code files with elements in a storyboard

Define a custom class

Implement an initializer on a custom class

Use UIView as a container

Understand how to display views programmatically

Define your data model

Create a data model

Write failable initializers on a custom class

Demonstrate a conceptual understanding of the difference between failable and nonfailable initializers

Test a data model by writing and running unit tests

Day 3

Create a table view

Understand the key components of a table view

Create and design a custom table view cell

Understand the roles of table view delegates and data sources

Use an array to store and work with data

Display dynamic data in a table view

Implement Navigation

Embed an existing view controller within a navigation controller in a storyboard

Create segues between view controllers

Edit the attributes of a segue in a storyboard using the

Attributes inspector

Pass data between view controllers using the prepareForSegue(_:sender:) method

Perform an unwind segue

Use stack views to create robust, flexible layouts

Implement Edit and Delete behaviour

Differentiate between push and modal navigation

Dismiss view controllers based on their presentation style

Understand when to use different type cast operators for downcasting

Leverage optional binding to check for complex conditions

Use segue identifiers to determine which segue is occurring

Persist Data

Create a structure

Understand the difference between static properties and instance properties

Use the NSCoding protocol to read and write data

Submitting your App to the App Store

Create an Apple Developer account

Create Developer Certificates

Create your app’s App ID

Register your device

Create profiles

Create an icon for your app

How to take screenshots of your App

Uploading your App to the App Store

Programme scope, delivery arrangements and suitability are confirmed during enquiry.