CS4414: Recitations (Labs)


CS4414 will have a required weekly recitation focused on practical C++ and Linux skills and the homework assignments.  The in-person version will be on Fridays in Phillips 101, at 3:45.

Sagar and Alicia will take turns running these.

   Date Topic Slides, Notes Remarks, chapter references, additional recommended readings (if any).  BO: Bryant and O'Hallaron.  BS: Bjarne Stroustrup.
   1. Aug 27 Introduction to recitations, setting up your C++ environment slides-pdf Provides an overview of the course including major goals, and provides instructions to set up VSCode with a remote linux machine 
   2. Sep 3 C++ types and containers slides-pdf Discusses various C++ types and inner workings of a std::vector 
   3. Sep 10 Linux and Linux Commands slides-pdf Introduce Linux and Linux commands with Demo example using std::queue;
   4. Sep 17 All about classes slides-pdf Class definition, implementation, construction, initializer list, access modifiers etc. 
   5. Sep 24 Pointers and Functions in C++ slides-pdf Introduces memory allocation, pointers, and functions in C++. 
   6. Oct 1 HW1 solution code-zip Sample solution for the homework. You can use this code for HW2 if you wish. For compatibility on ugclinux, check out traffic_simulator_ugclinux.zip
   7. Oct 8 Prelim Review slides-pdf Introduce const expression, template, and review the previously covered topics in the first 1/2 of course. 
   8. Oct 15 Debugging with gdb slides-pdf A run through of useful gdb commands with examples. 
   9. Oct 22 CMake and gprof slides-pdf Introducing CMake to build files and performance measurement and optimization using gprof. 
   10. Oct 29 All about templates slides-pdf Template instantiation, template specialization, concepts, variadic templates.... 
   11. Nov 5 Multithreading and Synchronization slides-pdf Introducing concurrency under multithreading, and synchronization using mutex and locking mechanism. 
   12. Nov 12 Multithreading II slides1 slides2 wc++-code A discussion of Sagar's word count program in more detail. The two slide-sets are from last year. One of them is actually the introductary recitation last year.
   13. Nov 20 Multithreading III slides-pdf Introducing condition variable and future&promises
   14. Dec 3 Final review slides-pdf A summary of the course and a discussion of interesting questions possibly relevant for the final