Link Search Menu Expand Document

MDB iOS Training Program

Fall 2022

Welcome 🎉

In this training program, we will take you through the Apple technologies behind the millions of Apps used by over one billion iPhones around the world. While this course is fundamentally about building iOS Apps, it will often touch upon the big picture concepts – such as modern programming paradigms, concurrency, memory management, database design and etc. We hope that this will help you develop the general software engineering knowledge which will help you no matter what career path you take in the future.

In terms of assignments, the iOS TP consists of 3 individual projects and a final group project. We will use Gradescope for submitting projects and assessing grades. You can also checkout lessons and projects details from the archive from last semester.

Software/Hardware Requirements

Because we will be developing and testing using native SDK, a Mac is required for this training program. In addition, for your sanity during debugging, you Mac model should be from 2016 or later. You should have macOS Monterey (12.1+) and Xcode (13.0+) installed before coming to the first lesson.


Week Lesson Topics Assignments
Week 1 Introduction to Swift and iOS Development Project 1
Week 2 iOS SDK I  
Week 3 iOS SDK II Project 2
Week 4 Concurrency and Memory Management  
Week 5 Web APIs and Firebase Project 3A
Week 6 Notification Center and Advanced Auto Layout Project 3B
Week 7 Modern Cocoa Touch APIs Project 4
Week 8 TBD  


  • Lesson 1: Introduction to Swift and iOS Development
  • Lesson 2: iOS SDK I
  • Lesson 3: iOS SDK II
  • Lesson 4: Concurrency and Memory Management
  • Lesson 5: Web APIs and Firebase
  • Lesson 6: Notification Center and Advanced Auto Layout
  • Lesson 7: Modern Cocoa Touch APIs
  • Lesson 8: TBD


  • Project 1: Meet the Member
  • Project 2: Pokédex
  • Project 3A / 3B: MDB Social