DATE TOPIC(S)/READING DUE
     
Jan 22 Shop rules
Software engineering
Source code style and documentation
C++11
[ READ Recommend review of Stroustrup Ch. 6, 9, 10, 11, 12, 44 ]
 
Jan 24 Source code style and documentation
C++11
g++ and make
[ READ Syllabus; Stroustrup Ch. 1.2, 1.3, 1.4, 44; Programming style; Indentation style; Natural Docs; Doxygen; g++; Writing Make Files ]
 
Jan 26   Programming Challenge #1
Jan 29 Unit testing
Standard Template Library (STL)/STL array
C++11 integer types
const functions
Exceptions
[ READ Unit testing; Stroustrup Ch. 4.1, 4.4, 4.5, 13, 31, 32; Standard Template Library; Containers; std::array; Fixed width integer types; Const member functions in C++; Exceptions ]
 
Jan 31 Unit testing
STL array
C++11 integer types
Exceptions
 
Feb 2   Programming Challenge #2
Feb 5 File and string streams
STL vector
STL algorithms
[ READ Stroustrup Ch. 4.3, 38; fstream; stringstream; std::vector; <algorithm> ]
 
Feb 7 File and string streams
STL vector
 
Feb 9   Programming Challenge #3
Feb 12 File and string streams
STL queue
g++ warning options
Makefiles
[ READ std::queue; Writing Make Files; g++ warning options ]
 
Feb 14 File and string streams
STL queue
g++ warning options
Makefiles
 
Feb 16   Programming Challenge #4
Feb 21 STL stack
[ READ std::stack; std::pair ]
 
Feb 23   Programming Challenge #5
Programming Project #1
Feb 26 STL map
STL iterators [ READ Stroustrup Ch. 33; std::map ]
 
Feb 28 STL map
STL iterators
 
Mar 2   Programming Challenge #6
Mar 5 OPEN LAB
Mar 7 structs and classes
[ READ Stroustrup Ch. 2.3, 3.2, 8, 16; Data structures; Classes (I) ]
 
Mar 9   Programming Challenge #7
Mar 12 pointers and dynamic objects
[ READ Stroustrup Ch. 7, 20, 21; Pointers; operator new; operator delete; C++ Member (dot & arrow) Operators ]
 
Mar 14 pointers and dynamic objects  
Mar 16   Programming Challenge #8
Mar 26 structs and classes
constructors and destructors
inheritance/derived classes
[ READ Stroustrup Ch. 17; Classes (I); Special members; Friendship and inheritance ]
 
Mar 28 structs and classes
constructors and destructors
inheritance/derived classes
 
Mar 30   Programming Challenge #9
Programming Project #2
Apr 2 linked lists
[ READ Linked list; Linked List Basics; VisuAlgo Linked list ]
 
Apr 4 linked lists  
Apr 6   Programming Challenge #10
Apr 9 linked lists
argc and argv
[ READ: How to parse command line parameters ]
 
Apr 11 linked lists
argc and argv
 
Apr 13   Programming Challenge #11
Apr 16 defining a template class
[ READ Stroustrup Ch. 3.4, 23; Classes (II) ]
 
Apr 18 defining a template class  
Apr 20   Programming Challenge #12
Programming Project #3
Apr 23 recursion
[ READ Stroustrup Ch. 28.3; Recursion (computer science); Recursion ]
 
Apr 25 recursion  
Apr 27   Programming Challenge #13
Apr 30 trees
[ READ Binary tree; Binary Trees ]
 
May 2 trees  
May 4   Programming Challenge #14
May 7 trees  
May 9 trees  
May 11   Programming Challenge #15
Programming Project #4
May 14 hashing and hash tables
[ READ Hash function ]
 
May 16 hashing and hash tables  
May 18   Programming Challenge #16
Mon, May 21, 12:00 - 2:00 pm, MC 146 Final challenge (DUE BY 2pm)