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 27 Introduction .pdf Steinberg 105
Wed Aug 29 Swift .pdf Steinberg 105
Mon Sept 3 NO CLASS Labor Day
Wed Sept 5 Studio 1 Lab 1 Mac Lab (Whitaker 316)
Mon Sept 10 MVC and Auto Layout .pdf .mp4 Steinberg 105
Wed Sept 12 Studio 2 Lab 2 Lab 1 Mac Lab (Whitaker 316)
Mon Sept 17 Views and View Controllers .pdf .mp4 Steinberg 105
Wed Sept 19 Custom Drawing .pdf .mp4 Steinberg 105
Mon Sept 24 View Controllers Lab 3 Lab 2 .pdf .mp4 Steinberg 105
Wed Sept 26 Scroll Views, Table Views and Collections .pdf Steinberg 105
Mon Oct 1 Local Storage and Web Services Steinberg 105
Wed Oct 3 Multithreading Lab 4 Lab 3 Steinberg 105
Mon Oct 8 Remote API's Steinberg 105
Wed Oct 10 Maps and Location Services Steinberg 105
Mon Oct 15 NO CLASS Fall Break
Wed Oct 17 Audio and Video Steinberg 105
Mon Oct 22 Design Principles Lab 4 Steinberg 105
Wed Oct 24 iOS APIs Steinberg 105
Mon Oct 29 Objective-C Part I Steinberg 105
Wed Oct 31 Final Projects Final Project Due Dates Steinberg 105
Mon Nov 5 Objective-C Part II Steinberg 105
Wed Nov 7 Project Proposals Steinberg 105
Mon Nov 12 Project Proposals Steinberg 105
Wed Nov 14 Work Day Mac Lab (Whitaker 316)
Mon Nov 19 Status Updates Steinberg 105
Wed Nov 21 NO CLASS Thanksgiving Steinberg 105
Mon Nov 26 Status Updates Steinberg 105
Wed Nov 28 Work Day Mac Lab (Whitaker 316)
Mon Dec 3 Final Presentations Project Steinberg 105
Wed Dec 5 Final Presentations Steinberg 105

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.

Regular Hours
Thursdays 6 - 8 PM
Fridays 3 - 5 PM
Sundays 3 - 5 PM

Additional Hours

Tuesdays 6 - 8 PM when an assignment is due on Wednesday

Last Minute Hours

Every day a lab is due we will hold hours that afternoon and evening


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.

Instructor

Todd Sproull
Jolley 536

Head TA

Mason Hall
Whitaker 316

Grading

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.

Grading

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
Option
Pass/Fail
Option
97 A+ Pass
93 A
90 A-
87 B+
83 B
80 B-
77 C+
73 C
70 C-
60 D Fail
0 F