Bruce Draper
Office: CSB 442
Office Hours: Tuesday 11:00-12:00, Wed. 10:00-11:00
Manoj Sreekumar
Office: CS120
Office Hours: Wednesday, Thursday. 16:00-18:00
Lecture Time and Place:
9:30-10:45, Tue, Thur, Clark A202
Recitation 1 Time and Place:
3:00-3:50, Mon, CSB 215
Recitation 2 Time and Place:
12:00-12:50, Mon, CSB 215
Recitation 3 Time and Place:
2:00-2:50, Wed, CSB 215
Recitation 4 Time and Place:
1:00-1:50, Thu, CSB 225

CS253 is the final course in the programming sequence that includes CS160, CS161, CS200 and CS270. One goal of CS253 is to teach C++, since the previous courses in the curriculum are in Java (CS160/161/200) or C (CS270). The more significant goal, however, is to complete the process of training a professional programmer. When this course is complete, you should have a better understanding of (1) the strengths, weaknesses and roles of different languages; (2) how C++ and Java are mapped onto hardware; (3) different models of object oriented programming; (4) memory management models; (5) how to write efficient code; and (6) how to exploit templates. In addition, you should be better at using software development tools. The recitations (which are a mandatory and important part of the course) give hands-on experience with tools used for software development in Linux, including make, gdb, subversion, valgrind and google test.

PA8 grades and test cases are available in the website.
Practice test for final exam now posted.