ECS 189e (Winter 2024)

iOS fundamentals

General information

Information Details
Lecture time and location Mon/Wed/Fri from 8am-8:50am @ Young Hall 184
Discussion time and location Fri from 1:10pm-2pm @ Young Hall 184
Instructor Sam King (kingst@ucdavis.edu)
Sam's office hours Wednesday and Friday from 9-10am 3053 Kemper
TA Shreyas Vijayanand (smvijay@ucdavis.edu)
Shreyas' Office HoursTBD
FinalNo final exam!
Canvas https://canvas.ucdavis.edu/courses/862948
Discussion board https://piazza.com/ucdavis/winter2024/ecs189e

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 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 hurt you for about 1/3 of the content in the class. Specifically, this means that:

  • You are likely to struggle with 3 or 4 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.