CSE 438

Mobile Application Development

shopping calculator app icon
virtual pet app icon
drawing app icon
movie search app icon
Date Topic Assigned Due Slides / Videos Location
Mon Aug 28 Introduction pdf Hillman 60
Wed Aug 30 Swift pdf Hillman 60
Mon Sept 4 NO CLASS Labor Day
Wed Sept 6 Studio 1: Xcode Lab 1 Mac Lab (Whitaker 316)
Mon Sept 11 MVC and Auto Layout pdf Hillman 60
Wed Sept 13 Studio 2: Swift Lab 2 Lab 1 Mac Lab (Whitaker 316)
Mon Sept 18 Views and View Controllers pdf Hillman 60
Wed Sept 20 Custom Drawing pdf Hillman 60
Mon Sept 25 View Controllers Lab 3 Lab 2 pdf Hillman 60
Wed Sept 27 Scroll Views, Table Views and Collections pdf Hillman 60
Mon Oct 2 Local Storage and Web Services pdf mp4 Hillman 60
Wed Oct 4 Multithreading Lab 4 Lab 3 pdf mp4 Hillman 60
Mon Oct 9 Remote API's pdf Hillman 60
Wed Oct 11 Maps and Location Services pdf Hillman 60
Mon Oct 16 NO CLASS Fall Break
Wed Oct 18 Audio and Video Hillman 60
Mon Oct 23 Design Principles Final Project Lab 4 Hillman 60
Wed Oct 25 iOS APIs Hillman 60
Mon Oct 30 Objective-C Part I Hillman 60
Wed Nov 1 Objective-C Part II Hillman 60
Mon Nov 6 Final Projects Hillman 60
Wed Nov 8 Project Proposals Hillman 60
Mon Nov 13 Project Proposals Hillman 60
Wed Nov 15 Work Day Mac Lab (Whitaker 316)
Mon Nov 20 Status Updates Hillman 60
Wed Nov 22 NO CLASS Thanksgiving Hillman 60
Mon Nov 27 Status Updates Hillman 60
Wed Nov 29 Work Day Mac Lab (Whitaker 316)
Mon Dec 4 Final Presentations Project Hillman 60
Wed Dec 8 Final Presentations Hillman 60

TA Hours

We have a great group of TA's to help this semester. All TA hours will be held in the Mac Lab (Whitaker 316). Any changes to the hours listed here will be noted on Piazza.

Jack Robards 2:00pm - 4pm
1:00pm-2:30pm Jinlin Zhang
1:00pm-2:30pm Xin Yan
2:00pm-3:30pm Lizhen Xiang
3:00pm-4:00pm Terry Lyu
5:30pm-6:30pm Nikki Wines
5:30pm-7:30pm Novi Wang
1:30pm-3:30pm Jack Robards
2:30pm-4:00pm Zach Greenberg
2:30pm-4:00pm Jinlin Zhang
7:00pm-10:00pm Jack Robards
1:00pm-2:30pm Jinlin Zhang
1:00pm-2:30pm Xin Yan
2:00pm-3:30pm Lizhen Xiang
3:00pm-4:00pm Terry Lyu
5:00pm-7:00pm Novi Wang
5:30pm-7:30pm Eric Goodman
2:30pm-5:00pm Zach Greenberg
2:30pm-4:00pm Jinlin Zhang
4:00pm-6:00pm Nikki Wines
4:00pm-6:00pm Rahi Shah
10:00am-12:00pm Novi Wang
11:00am-1:00pm Chuan Tang
12:00pm-2:00pm Matthew Stern
4:00pm-6:00pm Rahi Shah

Course Information

Learn how to create iOS apps in the Swift programming language. This course covers a variety of topics in the development of modern mobile applications, with a focus on hands-on projects. Students will create multiple fully-functional apps from scratch. The course emphasizes object-oriented design patterns and real-world development techniques. Time is provided at the end of the course for students to work on a project of their own interest.


Todd Sproull
Jolley 536

Head TA

Jack Robards
Whitaker 316


Grades are assigned based on performance on the four lab projects and final project. The labs are worth 70% of the final grade, and the final project is worth 30%. The lab breakdown is listed below:

Lab 1: Shopping Calculator (50 points)
Lab 2: Virtual Pet App (75 points)
Lab 3: Drawing App (100 points)
Lab 4: Movie Search App (150 points)

Collaboration Policy

For individual assignments, the code you submit must be your own. For the final project, the code must come from you or your teammates. You are allowed to use portions of code found on the Internet (as long as it is not from another CSE 438 student, past or present).

If you are using a significant amount of code from another website, be sure to include a comment in your submission with the URL to the website. Assume significant means 2 or more lines of code.

Submitting code from another student or from a previous semester is considered cheating and you will receive an F in the course. I have a zero tolerance policy towards students using code (or derived code) from another student, do not do it.


Grades are based on your performance of the labs assigned throughout the semester (70%) and your final project (30%).
Your letter grade in this course is based on your semester score, computed as described above. No rounding is performed on your semester score: you must have at least the stated number of points to earn the associated grade. The following table explains how the score is converted into a letter or pass/fail grade:

Score Grade
97 A+ Pass
93 A
90 A-
87 B+
83 B
80 B-
77 C+
73 C
70 C-
60 D Fail
0 F