ECS 189e (Winter 2021)

iOS fundamentals (online edition)

General information

Information Details
Lecture time and location Tuesday/Thursday via Zoom from 9am-10:20am
Discussion time and location Wednesday via Zoom from 9am-9:50am
Instructor Sam King (kingst@ucdavis.edu)
TA Utkarsh Opalkar (uvopalkar@ucdavis.edu)
TA Trevor Carpenter (tjcarpenter@ucdavis.edu)
Sam's Office HoursWed 10-11am
Utkarsh's Office HoursWed 9-10am
Trevor's Office HoursWed 9-10am
FinalNo final exam!
Canvas https://canvas.ucdavis.edu/courses/520270
Discussion board Piazza

Overview

This course will teach you how to write apps for both Android and iOS. We will focus on how these systems work behind the scenes, and discuss ​why they do things the way they do. At the end, students will be able to write moderately complex iOS and Android apps.

The prerequisite for this class is undergraduate operating systems (ECS 150 or equivalent).

Lectures

You are responsible for knowing about all announcements made in lecture. We will discuss expectations about the project, suggestions for how to succeed, and grading guidelines in class, and general class policy issues, so make sure you don't miss any lectures.

Do I need ECS 150 (undergrad OS)?

Yes, but I'm not going to enforce it. Among the topics I'm going to assume you're comfortable with are threads and synchronization, networking, and file systems and storage. Pragmatically, without these you can still get quite a bit out of the class and not having 150 will only hurt you for about 1/3 of the content in the class. Specifically, this means that:

  • You are likely to struggle with 3 of the quizzes.
  • You will likely get less out of about 1/3 of the lectures.
  • You will still be able to write iOS apps at the end of the quarter, even though you'll miss some of the most important parts of the class.