Intro – 01_Objective-C vs. Swift

Intro – 02_Writing Classes in Objective-C

Intro – 03_Methods and Messages in Objective-C

Intro – 04_Porting from Objective-C to Swift (Part 1)

Intro – 05_Porting from Objective-C to Swift (Part 2)

Intro – 06_Common Interop Challenges

Intro – 01_Interoperability Problem Set

Get Ready to Learn iOS

You will complete a series of coding exercises to test your understanding of Swift. There will be exercises for variables, strings, if (else-if and else) statements, and functions.

Variables and Types

Operators and Expressions

Control Flow


Structures and Enums




Object-Oriented Programming

Introduction and Xcode

Build your first app with Swift and Xcode, Apple’s programming environment for app development. You’ll learn how to use AutoLayout, UIButtons, and UILabels to create an interface, and how to react to touch events in an app using ViewController and multiple views. You’ll also learn how to set up audio recording and playback in a voice recording app.

AutoLayout and Buttons

ViewController and Multiple Views

Delegation and Recording

Playback and Audio Effects

Brainstorm Ideas for Your Final App!

Pitch Perfect

What is Version Control

Git course.

Create A Git Repo

Review a Repo’s History

Add Commits To A Repo

Tagging, Branching, and Merging

Undoing Changes

Working With Remotes

Working On Another Developer’s Repository

Staying In Sync With A Remote Repository

Develop Your Personal Brand

LinkedIn Review

GitHub Review

Outlets and Actions

You will create a first version of the MemeMe app that enables a user to take a picture, and add text at the top and bottom to form a meme. The user will be able to share the photo on Facebook and Twitter and also by SMS or email.

View Presentations and Segues

The Delegate Pattern

Build of the MemeMe App

MemeMe The Meme Editor

Table Views


Complete the MemeMe App

MemeMe 2.0 The Final Product

Suggested Electives

Introduction to AutoLayout

Suggested Electives AutoLayout

Using AutoLayout

View Properties used by AutoLayout

Beginning StackViews

Positioning Views Constraints

Horizontal Layouts

Vertical Layouts

Beyond AutoLayout

Sketch UI Elements for Your Final App!

Making a Network Request

Incorporate networking into your apps, and harness the power of APIs to display images and retrieve data. Use Apple’s Grand Central Dispatch, or GCD, framework to create asynchronous apps, ensuring a smooth user experience, even while your apps run lengthy operations in the background.

Using Web Services and APIs

Problem Set JSON Parsing

Chaining Asynchronous Requests

Authenticating Requests

Improve Networking with MVC

Preparing for On the Map

Closures Reloaded

GCD and Queues

Backgrounding Lengthy Tasks

On the Map

Suggested Electives

Conduct a Job Search

Refine Your Entry-Level Resume

Refine Your Career Change Resume

Craft Your Cover Letter

Find Web APIs for Your Final App

Debugging, Printing, and Logging

Suggested Electives • iOS Debugging.

Stepping Through Code

LLDB and Breakpoint Actions

Breakpoints and Visual Tools

Simple Persistence

Learn about simple persistence, the iOS File System, and the “sandbox.” Set up the classes we need to get Core Data up and running so that we can create, save, and delete model objects. Enable user interfaces to reactively update whenever the model changes, and safely migrate user data between versions.

iOS File System and Sandboxing

Introducing Core Data

The Core Data Stack

Simpler Code with Core Data

Rounding Out Core Data

Optional Elective Firebase in a Weekend – Saturday

Optional Elective Firebase in a Weekend – Sunday

Optional Elective Firebase in a Weekend – Monday

Virtual Tourist

Introduction to Digital Analytics

Introduction to Firebase Analytics

Implementing In-App Analytics

Analytics Integration


This is your chance to let your iOS Developer skills shine! For this final project, you’ll design and build your own iOS app, taking the design from the drawing board to the App Store.



You Decide!

Ace Your Interview

Practice Behavioral Questions

Interview Fails

Land a Job Offer

Interview Practice (iOS)

Principles of Software Design

Selective Electives • Mobile Design Patterns.

Creational Design Patterns

Structural Design Patterns

Behavioral Design Patterns

Software Anti-Patterns

Please Read Before Taking this Course

Introduction and Efficiency

List-Based Collections

Searching and Sorting

Maps and Hashing


04. Examining a Stack Frame


Updates to Video

  • popToRootViewControllerAnimated(_) has been renamed to popToRootViewController(animated:)
  • UIEventSubtype.MotionShake has been renamed to UIEventSubtype.motionShake
  • UIView.animateWithDuration(_) has been renamed to UIView.animate(withDuration:animations:)