Launch Your Career in iOS. Start building iOS apps in Swift in just four courses

 

Launch Your Career in iOS. Start building iOS apps in Swift in just four courses

 

About This Specialization

Master Swift, design elegant interactions, and create a fully functioning iOS app

This Specialization covers the fundamentals of iOS application development in the Swift programming language. You’ll learn to use development tools such as XCode, design interfaces and interactions and evaluate their usability, and integrate camera, photo, and location information to enhance your app. In the final Capstone Project, you’ll apply your skills to create a fully-functioning photo editing app for iPhone, iPad, and Apple Watch. A Mac computer is required for success in this course.

Created by:

courses

4 courses

Follow the suggested order or choose your own.

projects

Projects

Designed to help you practice and apply the skills you learn.

certificates

Certificates

Highlight your new skills on your resume or LinkedIn.

  1. COURSE 1

    Introduction To Swift Programming

    Commitment
    5 weeks of study, 2-4 hours/week
    Subtitles
    English, Korean, Chinese (Simplified)

    About the Course

    Introduction to Swift Programming is the first course in a four part specialization series that will provide you with the tools and skills necessary to develop an iOS App from scratch. By the end of this first course you will be able to demonstrate intermediate application of programming in Swift, the powerful new programming language for iOS. Guided by best practices you will become proficient with syntax, object oriented principles, memory management, functional concepts and more in programming with Swift. This course is unique in its dedication to teaching Swift programming. With new features and capabilities you will be at the forefront of writing iOS apps. Currently this course is taught using Swift 2. The team is aware of the release of Swift 3 and will be making edits to the course in time. Please be aware that at this time the instruction is entirely with Swift 2. Please note that to take part in this course (and the full specialization) it is required to have a Mac computer and, though not required, ideally an iPhone, iPod, or an iPad. NOTE: This course has been designed and tested (and content delivered) on a Mac. While we are aware of hacks and workarounds for running Mac in a virtual machine on windows we do not recommended a PC. We hope you have fun on this new adventure.


    WEEK 1
    Introductions and Getting Started
    Meet the teaching staff, get oriented to the platform, set up your work environment and get ready to program! We wish to remind you from the start that to take part in this course (and the full specialization) it is required to have Mac computer and, though not required, ideally an iPhone, iPod, or an iPad. This course has been designed and tested (and content delivered) on a Mac. While we are aware of hacks and workarounds for running OSX in a virtual machine on Windows, we do not recommended a PC. To find out of this specialization is for you, download the SHIFT Photo Editing app at http://beautifulapps.mobi and try it out. If you take this specialization, then you will learn to create an app similar to SHIFT.

     

    Video · Welcome to the Course and Intro to the Module

     

    Reading · Meet and Greet

     

    Reading · MIXIT

     

    Reading · Get Xcode – VERSION 7.3.1

     

    Video · Setting Up Playground

     

    Video · Overview of Projects

     

    Reading · Follow Up Reading

     

    Quiz · Set Up Course Quiz (For Grades)

     

    Video · Debugging

     

    Video · Setting Preferences

    WEEK 2
    Swift Basics
    In this module we will introduce the basic concepts of Swift. To begin you will learn variable declaration, different types, and program control mechanisms. Here we start to build the foundation of iOS app development with Swift. We hope you enjoy the journey.

     

    Video · Introduction to the Module

     

    Video · Setting Up Playground

     

    Video · Simple Control Flow

     

    Video · Arrays and Dictionaries

     

    Video · Functions

     

    Video · 2D Arrays

     

    Reading · Follow Up Reading

     

    Quiz · Swift Basics Quiz

    WEEK 3
    Advanced Swift
    This unit continues with further exploration of swift programming. Building on our current skill set we will work with Classes, Structs, Enums, Protocols, and object-oriented principles.

     

    Video · Introduction to the Module

     

    Video · Optionals, Closures, and Properties

     

    Reading · Follow Up Reading

     

    Quiz · Advanced Swift Quiz

     

    Video · Value Types

     

    Video · Cheat Sheet

    WEEK 4
    Image Processing In Swift
    In this module we will wrap up with lessons targeting advanced examples in Swift. We’ll look at a detailed example of an image filter which will allow us to manipulate pixels and create filter effects (such as change contrast).

     

    Video · Introduction to the Module

     

    Video · Introduction to Image Processing

     

    Reading · Follow Up Reading

     

    Quiz · Image Processing In Swift Quiz

    WEEK 5
    Final Peer Assignment
    You did it! You’ve come to the end of this first course. We sum up with a capstone peer assessment assignment where you will create your own filter and demonstrate what you’ve learned over these weeks. Please read the instructions carefully, and have fun!

     

    Reading · Using Xcode 7.3.1 for Peer Assignment

     

    Reading · InstaFilter Processor

     

    Quiz · InstaFilter Agreement (For Grade)

     

    Peer Review · InstaFilter Processor

    OPTIONAL – Swift vs Objective C
    OPTIONAL – In this module we compare some of the differences between Swift and Objective C programming languages. Join us as we migrate those of you familiar with Objective C to the world of Swift. Hopefully you find programming in Swift fast, easy and interactive.

     

    Video · Introduction to the Module

     

    Video · Files, Naming and Class Differences

     

    Video · Types and Initializers Differences

     

    Video · Methods, Arrays and Control Flow Differences

     

    Video · Properties, Getters and Computed Properties Differences

     

    Video · Instantiating Objects and Calling Methods Differences

     

    Reading · Follow Up Reading

  2. COURSE 2

    iOS App Development Basics

    Subtitles
    English

    About the Course

    iOS App Development Basics, the second course in the iOS App Development with Swift specialization, expands your programming skills and applies them to authentic app development projects. The topics covered in this course include Xcode basics, Core iOS and Cocoa Touch frameworks, simple user interface creation, MVC Architecture and much more. With a focus on using Apple’s components to access sensors like camera, microphone and GPS, by the end of this course you will be able to create a basic App according to specified parameters and guidelines. Currently this course is taught using Swift 2. The team is aware of the release of Swift 3 and will be making edits to the course in time. Please be aware that at this time the instruction is entirely with Swift 2.


    WEEK 1
    Welcome to iOS App Development Basics

     

    Reading · Welcome to iOS App Development Basics

     

    Video · Introducing Mixit

     

    Reading · Mixit App

    WEEK 2
    Further Introduction to XCode
    In this unit we will describe basic functions of XCode and other tools. Within a guided tutorial process, create a simple app from beginning through to compilation that runs on a device.

     

    Video · Course 2 Introduction

     

    Reading · RGBAImage Class for Moving Forward

     

    Video · Running Code in an App

     

    Video · Creating Interfaces

     

    Video · Using Buttons

     

    Quiz · Further XCode Unit Quiz (For Grades)

    WEEK 3
    UIKit and the Interface Builder
    Here we dive into layouts and some user interface elements.

     

    Video · Intro to Auto Layout

     

    Video · Beginning Auto Layout

     

    Video · In-Depth Auto Layout

     

    Video · Intro to UI Elements

     

    Video · Basic UI Elements

     

    Video · Intro to UIStackView

     

    Video · UIStackView

     

    Quiz · UIKit Unit Quiz (For Grades)

    WEEK 4
    Advanced UI Concepts
    Here we begin to really add elegance to our UI

     

    Video · Modifying the View Hiearchy in Code

     

    Video · Basic Animations

     

    Video · Tableviews and The Delegate Pattern

     

    Video · Intro to Camera and Emailing

     

    Video · Action Sheet, Image Picker and Activity Controller

     

    Quiz · Advanced UI Unit Quiz (For Grades)

    WEEK 5
    Final Peer Assignment – App Functionality
    At this point we have written the basic user interface for our image filtering app. In this assignment you will implement remaining functionality, and then extend and refine the UI. For bonus marks you can try implementing a more advanced filter selection UI using the UICollectionView API.

     

    Reading · Read First: Full Instructions

     

    Reading · Starter Code Download for Peer Assessment

     

    Peer Review · App Functionality

     

    Video · Course 2 Closing Remarks

  3. COURSE 3

    App Design and Development for iOS

    Commitment
    5 weeks of study, 1-2 hours/week
    Subtitles
    English

    About the Course

    In App Design and Development for iOS, the third course of the iOS App Development with Swift specialization, you will be developing foundational programming skills to support graphical element presentation and data manipulation from basic functions through to advanced processing. You will continue to build your skill set to use and apply core graphics, touch handling and gestures, animations and transitions, alerts and actions as well as advanced algorithms, threading and more. By the end of this course you will be able to develop a more advanced, fully functioning app. Currently this course is taught using Swift 2. The team is aware of the release of Swift 3 and will be making edits to the course in time. Please be aware that at this time the instruction is entirely with Swift 2.


    WEEK 1
    Welcome to App Design and Development for iOS
    Get oriented to the course.

     

    Reading · Welcome to the Course

     

    Reading · Demo Project File

    User Interactivity
    In this module you’ll learn how to design for your users’ interactions

     

    Video · ScrollViews

     

    Video · Gesture Recognizers

     

    Video · Handling Touches

     

    Reading · Follow Up Reading

     

    Quiz · User Interactivity Quiz (For Grades)

    WEEK 2
    Multiple View Controllers & Navigation
    In this module we explore different controllers for navigating your app

     

    Video · Segues

     

    Video · Navigation Controllers

     

    Video · Tab Bar Controllers

     

    Reading · Follow Up Reading

     

    Quiz · Multiple View Controllers & Navigation Quiz (For Grades)

    WEEK 3
    Persistence & Networking
    Learn how to customize behavior to match a user’s preferences.

     

    Reading · .zip file to be used in the module

     

    Video · Module Introduction

     

    Video · NSUserDefaults

     

    Video · NSURLSession

     

    Video · NSKeyedArchiver

     

    Video · CoreData

     

    Reading · Follow Up Reading

     

    Quiz · Persistence & Networking Quiz (For Grades)

    WEEK 4
    Introduction to developing for watchOS 2
    In this module we give you some of the tools for designing for watchOS 2

     

    Video · Setting up a watch target

     

    Video · Basic concepts & architecture

     

    Video · Creating UI for the watch

     

    Video · Navigation on the watch

     

    Reading · Follow Up Reading

     

    Quiz · Introduction to developing for watchOS 2 Quiz (For Grades)

    WEEK 5
    Introduction to Developing for tvOS
    In this module you will gain insight into developing for tvOS

     

    Video · Module Introduction

     

    Reading · .zip file to be used in the module

     

    Video · Creating a tvOS Project

     

    Video · Basic Concepts

     

    Video · Creating a UI for tvOS

     

    Video · Understanding the Focus Engine

     

    Reading · Follow Up Reading

     

    Quiz · Introduction to Developing for tvOS Quiz (For Grades)

    Peer Assessment
    Final Assessment for the Course

     

    Peer Review · Functional App

  4. COURSE 4

    Build Your Own iOS App

    Commitment
    4 weeks of study, 3-5 hours/week
    Subtitles
    English

    About the Capstone Project

    In the Build Your Own iOS App capstone you will expand your repertoire of additional features and more advanced functions that may be implemented within the iOS environment. You will refine your development skill set and will apply your accumulated skills over the entire specialization series in an applied application development capstone project. This particular course is project based and structured around you building a high quality app as a capstone to the specialization. Currently this course is taught using Swift 2. The team is aware of the release of Swift 3 and will be making edits to the course in time. Please be aware that at this time the instruction is entirely with Swift 2.


    WEEK 1
    Welcome to Build Your Own iOS App
    Introduction and course roadmap.

     

    Reading · About the course

     

    Video · Fun With Selfies

     

    Reading · Fun With Selfies: Module Download for Xcode 7.2

     

    Reading · Fun With Selfies: Module Download for Xcode 7.3

     

    Reading · Fun With Selfies: Module Download for Xcode 8.1/8.2

     

    Reading · Fun With Selfies: Module Download for Xcode 8.3

     

    Reading · Fun With Selfies: Xcode 7.3 & Xcode 8.2

     

    Reading · Fun with Selfies: Using the FaceTracker framework

     

    Reading · Fun with Web Services

     

    Reading · Fun with Web Services: Set up Accounts

     

    Reading · Fun with Web Services: Starter Code

     

    Reading · Fun With Web Services: Practice Playground

     

    Video · Making Prototypes With Keynote

    Facetracker Library
    Get the face detector library running and understand its notation/connections

     

    Reading · Fun With Selfies: Facetracker File Download for Xcode 7.2

     

    Reading · Fun With Selfies: FaceTracker File Download for Xcode 7.3

     

    Reading · Fun With Selfies: FaceTracker File Download for Xcode 8.1/8.2

     

    Reading · Fun With Selfies: FaceTracker File Download for Xcode 8.3

     

    Reading · Fun With Selfies: An important note about using the FaceTracker framework

     

    Reading · Fun With Selfies: Add Facetracker Framework Video

     

    Video · Fun With Selfies: Add Facetracker Framework

     

    Video · Fun With Selfies: Facetracker view controller

    WEEK 2
    Object Animation (Basic)
    Create a simple animation of an object based on the position of the face

     

    Video · Fun With Selfies: Basics of facetracker

     

    Reading · Fun with Web Services: API Documentation

     

    Video · Fun With Web Services: Making HTTP Requests

     

    Video · Example – App Prototype

     

    Peer Review · Peer Check-In: App Prototype

    Animation Series (Complex)
    Create a series of animations based on the face location and associate these with a certain look

     

    Video · Fun With Selfies: Show tracked points

    WEEK 3
    Final App Submission
    Create a final app with the ability to take a photo and share the result. Final peer assessment.

     

    Video · Farewell from iOS App Team

     

    Reading · Final Project

     

    Video · Final Example

     

    Peer Review · Final Project Submission

 

Pricing

Enroll

 

Creators

The Edward S. Rogers Sr. Department of Electrical & Computer Engineering at the University of Toronto consistently ranks among the top in North America.

Established in 1827, the University of Toronto has one of the strongest research and teaching faculties in North America, presenting top students at all levels with an intellectual environment unmatched in depth and breadth on any other Canadian campus.

Enroll Now