Syllabus
- General Information
- Contact Information
- Overview
- Email Correspondence
- Tutor Sessions and Office Hours
- Do I need ECS 150 (OS) and ECS 140 (Programming Language)?
- Grade Breakdown
- Course Outline
- Access CSIF Mac Devices
- Regrade Policy
- Late Submission Policy
General Information
You need to manually set unit to 2 on the Schedule Builder.
- Title: ECS 198F 003 - Student-Led iOS Development with SwiftUI (Spring 2022)
- Unit: 2
- Grading: P/NP
- Prerequisite:
- Required: ECS 36B or ECS 32B
- Recommended: ECS 150 and ECS 140 (not required)
Information | Details |
---|---|
Lecture Time | 4:10 - 5 pm TR |
Lecture Location | Teaching and Learning Complex 3210 |
Student Instructor | Yibo Yan |
Tutors | Yifan Huang, Yiyang Huo |
Advisor | Prof. Nina Amenta |
Yibo’s Office Hours | Wed 1-2 pm on Zoom |
Yifan’s Tutor Sessions | Tue 10-11 am on Zoom |
Yiyang’s Tutor Sessions | Thu 10-11 am on Zoom |
Canvas | External Link |
Discussion Board | Links are on Canvas’s syllabus section. |
Contact Information
Name | ||
---|---|---|
Student Instructor | Yibo Yan | ybyan@ucdavis.edu |
Tutor | Yifan Huang | yifhuang@ucdavis.edu |
Tutor | Yiyang Huo | huo@ucdavis.edu |
Advisor | Prof. Nina Amenta | amenta@cs.ucdavis.edu |
Overview
Thanks to Prof. Nina Amenta for sponsoring and giving out valuable advice to this course. Also, thanks to Prof. Sam King for encouraging me to make this course happen.
This course will teach you how to develop iOS apps with SwiftUI and other new technologies offered in the latest iOS. We will focus on UI construction, animation, navigation, and wonderful Swift language features! Due to the limitation of the course unit, we will not overload you with full topics on iOS development. If you’re interested, more optional materials (pre-recorded videos or readings) might be provided to prepare you more for iOS development.
Email Correspondence
Please include [ECS 198F]
in the email title when sending an email to us so it won’t get filtered out accidentally.
For any general question regarding syllabus, logistics, or assignment, please post it on Discord or GitHub Discussion.
For personal or sensitive matter, you can directly send emails to Yibo Yan.
For any code-related question that you didn’t get response promptly on discussion board, you can send emails to Yibo Yan and ‘cc all tutors, so you can get your response as quick as possible.
Please DO NOT directly email to Prof. Amenta regarding this course unless if it is really necessary. Prof. Amenta doesn’t directly lead this course. Therefore, she might not be able to help you.
Tutor Sessions and Office Hours
All tutor sessions and office hours will be hold online via Zoom. If the current timing of tutor sessions and office hours don’t work you, feel free to send the email to the student instructor and tutors.
Joining information can be found on Canvas’s Zoom
tab.
Upon request, we can set up more tutor sessions and OHs if you need more!
The student instructor and tutors will be active on Discord. Therefore, we are more than happy to provide text help or just jump into voice channel to help!
Do I need ECS 150 (OS) and ECS 140 (Programming Language)?
This course will be different from the ECS 189E offered by Prof. Sam King, where OS is highly involved. This course will mainly focus on constructing the UI and animation with SwiftUI and some advanced language features in Swift. Hence, we will not heavily rely on ECS 150 here. However, the knowledge of OS will definitely help you understand course materials. Also, optional materials on advanced scheduling might be provided for your interests. Since you will learn Swift, a functional programming language, ECS 140 will definitely help you quickly pick up Swift in this course.
Grade Breakdown
Item | Percent | Description |
---|---|---|
Hello World Assignment | 5% | A simple Hello World assignment to prepare the environment |
Assignment 1 | 15% | UI and layout challenges |
Assignment 2 | 15% | Animations and Transitions |
Assignment 3 | 15% | Data Flow and Essentials |
Assignment 4 | 15% | Network (RESTful API) |
Final Project | 35% | Pitch 5%, Code 15%, Demo/Presentation 10%, and Group Evaluation 5% |
Course Outline
Course outline can be found in the sidebar, in Course Outline section.
Access CSIF Mac Devices
Currently, you haven’t been given the access to CSIF mac devices. An announcement will be posted when it’s done. You can find the instrution of accessing CSIF mac devices from here.
Regrade Policy
For any regrade request, please directly send email to the student instructor within 1 week of the initial grade release date.
Please use [ECS 198F 003] Assignment{NUMBER} Regrade Request
as title (replace the {NUMBER} with actual assignment number), in case the email get filtered out accidentally. Please also include your roaster name and SID in your email.
Late Submission Policy
The late submission policy only applies to weekly assignments. No late submission will be granted for the group final project or introductory assignment. Please start your final project as soon as possible.
Normally, each assignment will be released on Thursday and due on next Thursday 11:59 pm. You will have one week for each assignment.
(Modified late policy) If you commit or push anything after the original deadline, you will be automatically considered for late submisson. No need for sending request anymore.
Late submission will be granted upon request. If you wish to use extension, please email instructor before the original deadline with title [ECS 198F 003] Assignment{NUMBER} Extension Request
(replace the {NUMBER} with actual assignment number), just in case the email get filtered out. Please also include your roaster name and SID, so we can log the information correctly.
We will grant at most 3 days. For example, the last day to submit and push to your repository hosted on the GitHub is Sunday 11:59 pm if the original deadline is Thursday 11:59 pm. For late submission penalty, please see below.
Late Submission Penalty
The late submission penalty is calculated per assignment.
Late Days | Grade Penalty |
---|---|
<= 1 Day | 5% |
1 ~ 2 Days | 10% |
2 ~ 3 Days | 15% |
We will checkout to your latest commit or the last commit before the last day of the late submission, whichever comes first. If you pushed anything to your repository on GitHub, you will be automatically considered for late submission. Therefore, please DO NOT commit or push anything after the deadline if you don’t want to use the late policy.