UC Irvine - Fall ‘22 - ICS 45C
An introduction to the lexical, syntactic, semantic, and pragmatic characteristics of the C/C++ languages for experienced programmers. Emphasis on object-oriented programming, using standard libraries, and programming with manual garbage collection.
Rules & Guidelines
BookWe'll use The Rook's Guide to C++ as the course textbook. This is a free book that you can download here: https://rooksguide.org/2013/11/26/version-1-0-is-out/
This book provides a good intro to C++ for first time programmers, and since you've taken a few courses already, the explanations should be easy to follow :)
We might also occasionally use additional material in lecture, which will be posted here. You can also find my lecture notes in that section.
Quizzes will take place during lecture, in-person only!
If you miss a quiz, you’ll have the option to take a make up alongside your final. During week 9 or 10, I will send an announcement through EdStem with a form you can fill selecting the quizzes you missed.
All project deadlines are 10PM PT! Submissions will be run through MOSS.
You can submit your solutions as many times as you want.
Project Late SubmissionsYou'll have a 15min buffer to account for any technical difficulties in all project submissions. So, if you submit your project at 10:16PM, it'll be considered late.
Additionally, you'll have a total of 5 extra days to work on your projects. You can use them at your discretion. For example, if Project 1 is due Friday at 10PM, and you make a submission between Friday 10:16PM and Saturday 11:59PM, you'll use one of your days. If you make a submission between Sunday 00:00AM and Sunday 11:59PM, you'll use 2 days. And so on. There is no going back on a used day, i.e., if you made a late submission, that day is used.
You can use 1 day on each of the 5 projects, all 5 days in a single project, or any combination you wish. You don't need to submit anything to use these days, all projects will be open for late submissions and we'll reduce the number of days you have based on your submissions. Please be aware of the number of days you have remaining! No extra days will be awarded, and submissions over your extra days will not be considered.
You can keep track of how many days you have used here: https://canvas.eee.uci.edu/courses/48712/assignments/1055941
Homework (10%)Homework will be based on the "Review Questions" from our textbook. The chapters might be out of order, as they're assigned to match our projects and quizzes.
All extra credit will be applied to your final grade.
Regrade RequestsRequests for quizzes should be open through gradescope within 5 days of grade posting.
Project grades will be based on autograders; no manual regrades will be accepted since we don't have the bandwith to do that for all of you, so it wouldn't be fair to do it for a select few. You do have the option to submit your solution multiple times, so you can test your code and make changes before the deadline is up.
AccommodationsAny student who feels he/she/they may need an accommodation based on the impact of a disability should contact me privately to discuss his/her/their specific needs. Also contact the Disability Services Center at dsc.uci.edu or (949) 824-7494 as soon as possible to better ensure that such accommodations are implementationed in a timely fashion.
Lecture MaterialsExtra slides, code snippets, etc. will be posted here after lectures.
Commitment to an inclusive learning environment: this class adheres to the philosophy that all community members should enjoy an environment free of any form of harassment, sexual misconduct or discrimination. Please be respectful and kind to one another.