instructor: Dave Kauchak
e-mail: [first_initial][last_name]@cs.pomona.edu
office hours: Edmunds 221
Mon. 1:30-3pm, Tue. 2:30-4pm and Wed. 10:30am-12
and by appointment
TAs: Aaron Fong, Sam Konowitch and Maria Zhu
office hours: Edmunds 229
Sun. 6:30-8:30pm
Mon. 3-5pm
time: T/Th 1:15-2:30pm
location: Millikan 134
lab: Fri 1:15-4pm
lab location: Edmunds 229
web page: http://www.cs.pomona.edu/classes/cs051/
textbook:
general information:
Computer Science 51 is an introduction to programming using the Java programming language. By the end of this course you should have a good basic understanding of how to develop (design, code, and debug) medium-sized programs in Java, and have a basic understanding of how one might analyze programs for correctness and efficiency.
We do not assume you have had any previous programming experience for this course. If you have had extensive previous experience, cs52 or cs62 might be more appropriate. Feel free to discuss this with myself or any of the other CS faculty.
Date | Topic | Reading | Problems | Comments |
---|---|---|---|---|
1/19 | admin, java basics, graphics, event handling, instance variables | |||
1/21 | methods, parameters, numbers constants | Ch. 1, 2 | 1.9.3 | |
1/22 | Lab 1 - No Clicking (pdf) | Due 11pm 1/25 | ||
1/26 | conditionals, random numbers | Ch. 3, 4 | 1.6.3, 2.7.7 | |
1/28 | booleans, colors, primitive types | Ch. 5 | 4.2.2 | |
1/29 | Lab 2 - Laundry (pdf) | Due 11pm 2/1 | ||
2/2 | primitive types, classes, constructors | Ch. 6 | 4.8.6, 5.3.1 | |
2/4 | methods, parameters, variables | Ch. 7, 8 | 5.7.2, 5.7.6, 6.9.1 | |
2/5 | Lab 3 (pdf) | Due 11pm 2/8 | ||
2/9 | control constructs, active objects | Ch. 9 | 8.6.2, 7.1.2 | |
2/11 | more active objects, more complex loops | 9.10.1, 9.11.1 | ||
2/12 | Lab 4 (pdf) | Due 11pm 2/15 | ||
2/16 | interfaces | Ch. 10, Ch. 11.7 | 9.11.2 | |
2/18 | keyboard input, GUIs | Ch. 11 | 10.5.1, 10.5.2 | |
2/19 | Lab 5 (pdf) | Due Tuesday 11pm 2/23 | ||
2/23 | more GUIs | 11.4.2, 11.4.3 | ||
2/25 | recursion | Ch. 12 | 11.9.2 | |
2/26 | Lab 6 (pdf) | Due 11pm 3/1 | ||
3/2 | more recursion Sample midterm | 12.1.8, 12.1.9 | TP1 (pdf) Due 6pm 3/12 | |
3/4 | recursion/review | 12.1.10, 12.1.13 | ||
3/5 | Lab 7 (pdf) | Due 11pm 3/8 | ||
3/9 | midterm | |||
3/11 | No class | |||
3/12 | No lab - TP1 due at 6pm! | |||
3/16 | Spring break | |||
3/18 | Spring break | |||
3/19 | Spring break | |||
3/23 | inheritance | Ch. 17 | ||
3/25 | arrays | Ch. 14 | 17.8.1, 17.5.1 | |
3/26 | No lab - Cesar Chavez | |||
3/30 | more arrays | 14.2.2 | ||
4/1 | multidimensional arrays | Ch. 15 | 14.9.3 | |
4/2 | Lab 8 (pdf) | Due 11pm 4/5 | ||
4/6 | multidimensional arrays | 15.4.4 | ||
4/8 | strings | Ch. 16 | 15.4.1 | |
4/9 | Lab 9 (pdf) | Due Tuesday 11pm 4/13 | ||
4/13 | more strings | 16.5.2 | TP2 (pdf) | |
4/15 | exceptions | Ch. 18 | 16.5.9 | |
4/16 | Lab 10 (pdf) | Due 11pm 4/19 | ||
4/20 | file I/O | Ch. 19 | 18.9.3 | |
4/22 | streams | 19.7.2, 19.7.3 | TP2 design due 1:15pm | |
4/23 | Lab 11 (pdf) | Due 11pm 4/26 | ||
4/27 | network Sample Final | |||
4/29 | sorting/asymptotics | Ch. 20 | 19.7.5 | |
4/30 | Lab 12 (pdf) | Due 11pm 5/3 | ||
5/4 | review | TP2 due 5pm |