University Subjects

COMP6771: Advanced C++

COMP6771: Advanced C++

University
University of New South Wales
Subject Link
View Subject

Subject Reviews

cherloire

2 years ago

Assessment
- Assignment 1: STL containers/algorithms (15%)
- Assignment 2: Operator overloading, OOP (25%)
- Assignment 3: Templates and iterators (30%)
- Final exam: 3 hours online, 2 programming exercises (30%)
Assumed Knowledge
Formally, COMP2511 (only basic OOP concepts such as inheritance and polymorphism are drawn from this course)
Comments
Despite the big self learning component of this course (which is basically wading through cppreference.com and S/O), this course has the best content out of any course I have learned so far. Hayden is a really great lecturer. One of the comments I've seen a few times about him is that "he doesn't seem very knowledgeable since he googles stuff in the lectures". I actually think this aspect of his C++ teaching is good - most of the time in this course you will spend navigating online C++ library specifications etc, and seeing him use these websites and picking up on the things he looks for when seeking an answer will become very relatable as students complete the assignments. The forum support (edstem) is excellent, shoutout to one of the tutors Nathaniel.

I really like the way the language is presented in the lectures, and students can immediately see the advantages of C++ over other languages they will have previously learned in CS at UNSW such as Java and C. One thing I wasn't aware of initially was that the course is more of a "C++ design course", in other words how to write C++ in a "correct" way (as there are many ways to do things in this language). The assignments are tailored towards this idea - rather than getting students to build cool applications in C++, the assignments are a means to reinforce good C++ practices. This did slightly get on my nerves a bit with the assignment marking though - different tutors marked assignments differently, and it seemed there wasn't much of a consistent marking criteria in some places, which became very obvious as I talked to other friends taking the course.
The assessment structure, being heavily assignment loaded and only a 30% exam, is a big plus IMO, and I think more CS courses should move to this model (if they haven't already). This is pretty rough however if you have a heavy workload term with other assignment loaded courses. The first question of the exam doesn't really test the learning done throughout the course, which was mainly from learning about and leveraging C++ features to complete the assignments. Instead it was an algorithmic type question that students could have completed before ever taking the course using C knowledge. The second question specification was a bit poor, many important details were left in a footer at the bottom, which took me a while to read as I was trying to decipher the overall question (thankfully these were only small parts in terms of marks). Despite this, I personally I thought the exam was reasonable, and could have done better if I was well slept and/or better prepared, however it was tight, and many students did not finish (or get close to finishing).
Contact Hours
2 x 2h Lectures (delivered over Youtube Live), 1 x 1h Tutorial (delivered over Zoom)
Difficulty
2.5/5
Lecture Recordings?
Yes, all lectures are archived on Hayden's youtube channel (you can watch all of them here, and also includes his other courses, which is great). Hayden's tutorial is also recorded each week.
Lecturer(s)
Hayden Smith (with guest lecturers in week 10 from Optiver)
Notes / Materials Available
Slides to accompany the lectures are given, however they are sometimes pretty barebones, and often had errors or had not been updated since the previous offering, which is slightly annoying if you rather learn by reading notes rather than watching lectures, like me.
Overall Rating
4.5/5
Textbook
Bjarne Stroustrup's textbook is listed as "If we had to point you to a single resource", but don't bother, the recordings/slides along with cppreference.com are more than enough.
Year & Trimester Of Completion
21T2
Your Mark / Grade
96 HD

Did you find this review helpful?

Australia Treasury

Help shape the future for all Australians

Want to make an impact to your local community and across Australia? Join Treasury, the Government’s lead economic advisor and be involved in developing policies and providing well informed, innovative and sound advice on key issues that impact Australians.

Find out more