Duration
5 days
Overview
From Playgrounds to protocols, discover, explore, and demonstrate how to use the fundamental building blocks of the Swift programming language. This 5-day, hands-on course is designed to teach you the basic concepts of Swift programming, including syntax, logic, structures, functions, and patterns. It also includes detailed explanations of language syntax and coding exercises.
You will also learn how to build and run your first apps on iOS using the Swift programming language. Discover and learn common tools, technologies, interface elements, and design patterns used to build iOS apps. The course includes detailed explanations of iOS technologies, hands-on use of Apple’s development tools, and coding exercises in Swift that use common iOS frameworks.
Programs you will write:
Light - A simple flashlight app. Students will learn the basics of data, operators, and control flow in the Swift programming language. They'll also learn about Xcode, Interface Builder, building and running an app, debugging, and documentation.
Apple Pie - A word-guessing game. Students will learn about Swift strings, functions, structures, collections, and loops. They'll also learn about UIKit, the system views and controls that make up a user interface, and how to display data using Auto Layout and stack views.
Personality Quiz - A personalized survey that reveals a fun response to the user. Students will learn how to build simple workflows and navigation hierarchies using navigation controllers, tab bar controllers, and segues. They'll also learn about optionals and enumerations, two powerful tools in Swift.
List - A task-tracking app that allows the user to add, edit, and delete items in a familiar table-based interface. Students will be able to customize the app to track any type of information, such as a card collection, homework assignments, or a playlist. They'll learn how to build scroll views, table views, and complex input screens. They'll also learn how to save data, share data to other apps, and work with images in the user's photo library.
Restaurant - A menu app that displays the available dishes from a restaurant and allows the user to submit an order. This project comes with an easy-to-use local web service that allows students to customize the entire menu with their own menu items and photos. Students will learn about animations, concurrency, and working with the web.”
Course Objectives
Upon completion of the App Development with Swift course, students
will:
Learn how to use Xcode Playgrounds to write Swift code
Learn common programming patterns used in Swift
Learn keywords and vocabulary used by the Swift language
Learn how to build native apps using the iOS SDK
Learn how to use Xcode and the Simulator
Learn how to use common navigation patterns and UI controls
Course Pre-requisites
Basic computer programming concepts: You should be comfortable with basic concepts of computer programming, including variables, strings, logic, and classes. You’ll be expected to write code as part of the training.
Day 1 - Getting Started
Introduction to Swift and Playgrounds
Constants, Variables and Data Types
Operators
Control Flow
Debugging
Documentation
Interface Builder Basics
Guided Project - Light
Day 2 - Introduction to UIKit
Strings
Functions
Structures
Classes and Inheritance
Collections
Loops
Introduction to UIKit
Displaying Data
Controls in Action
Auto Layout and Stack Views
Guided Project - Apple Pie
Day 3 - Navigation and Workflows
Optionals
Type Casting
Guard
Scope
Enumerations
Segues and Navigation Controllers
Tab Bar Controllers
View Controller Life Cycle
Simple Workflows
Guided Project - Quiz
Day 4 - Tables and Persistence
Protocols
App Anatomy and Life Cycle
Model View Controller
Scroll Views
Table Views
Intermediate Table Views
Saving Data
System View Controllers
Complex Input Screens
Guided Project - List
Day 5 - Working With the Web
Closures
Extensions
Animations
WWW HTTP and URL Session
WWW JSON Serialization
WWW Concurrency
Guided Project - Restaurant
Prototypes and Planning
Programme scope, delivery arrangements and suitability are confirmed during enquiry.