instructors: Dave Kauchak
e-mail: [first_initial][last_name]@cs.pomona.edu
office hours: Edmunds 221
Mon. 4-5pm, Tue. 10:30am-12 and Th. 10am-11
and by appointment
Kim Bruce
e-mail: [first_name]@cs.pomona.edu
office hours: Edmunds 222
MWF 11 - 11:50am and MWThF 2-3pm
and by appointment.
TAs: Evan Fields, Trevor Flynn, Sam Konowitch and Michael Stock-Matthews
office hours: Edmunds 229
Sun. 8:30-10:30pm, Monday 8-10pm
time: M/W 11am-12:15
location: Edmunds 114
lab: Thu 7-9:50pm or 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 |
---|---|---|---|---|
9/1 | admin, java basics, instance variables, parameters | Ch. 1, 2 | ||
9/2 : 9/3 | Lab 1 (pdf) | Due 11 pm 9/6 | ||
9/6 | numbers, constants, conditionals | Ch. 3, 4 | 1.9.3, 1.6.3 | |
9/8 | conditionals, random nums, booleans, colors | Ch. 5 | 2.7.7 | |
9/9 : 9/10 | Lab 2 (pdf) - design_example | Due 11pm 9/13 | ||
9/13 | classes, constructors | Ch. 6 | 4.2.2, 4.8.6 | |
9/15 | more classes | Ch. 7 | 5.7.6, 5.7.2 | |
9/16 : 9/17 | Lab 3 (pdf) | Due 11pm 9/20 | ||
9/20 | control constructs, active objects | Ch. 8, 9 | ||
9/22 | more active objects, complex loops | 8.6.2, 9.10.1 | ||
9/23 : 9/24 | Lab 4 (pdf) | Due 11pm 9/27 | ||
9/27 | interfaces | Ch. 10, 11.7 | 8.1.1, 9.11.2 | |
9/29 | keyboard input, GUIs | Ch. 11 | 10.5.1, 10.5.2 | |
9/30 : 10/1 | Lab 5 (pdf) | Due Tuesday 11pm 10/5 | ||
10/4 | more GUIs, sample midterm | TP1 (pdf) Due 6pm 10/15 | ||
10/6 | GUIs, review | 11.4.2, 11.4.3 | ||
10/7 : 10/8 | Lab 6 (pdf) | |||
10/11 | midterm | |||
10/13 | recursion | Ch. 12 | ||
10/14 : 10/15 | No Lab - TP1 due 10/15 | |||
10/18 | Fall break | |||
10/20 | more recursion | 12.1.8, 12.1.9 | ||
10/21 : 10/22 | Lab 7 (pdf) | |||
10/25 | recursion, inheritance | Ch. 17 | 12.1.10, 12.1.13 | |
10/27 | inheritence, arrays | Ch. 14 | 17.8.1, 17.5.1 | |
10/28 : 10/29 | Lab 8 (pdf) | |||
11/1 | more arrays | |||
11/3 | multidimensional arrays | Ch. 15 | 14.2.2, 14.9.3 | |
11/4 : 11/5 | Lab 9 (pdf) | |||
11/8 | multidimensional arrays | 15.4.4 | ||
11/10 | multiD arrays, strings | Ch. 16 Optional: article | 15.4.1 | |
11/11 : 11/12 | Lab 10 (pdf) | Due Tuesday 11pm 11/16 | ||
11/15 | more strings | 16.5.2 | TP2 (pdf) | |
11/17 | exceptions | Ch. 18 | 16.5.9 | |
11/18 : 11/19 | Lab 11 (pdf) | |||
11/22 | file I/O | Ch. 19 | 18.9.3 | |
11/24 | NO CLASS | TP2 design due 11am | ||
11/25 : 11/26 | Thanksgiving | |||
11/29 | streams/network | 19.7.2, 19.7.3 | ||
12/1 | network Sample Final | Ch. 20 | 19.7.5 | |
12/2 : 12/3 | Lab 12 (pdf) | |||
12/6 | sorting/asymptotics | | ||
12/8 | review | TP2 due at midnight |
Final exam on Wednesday, Dec. 15 at 9:00am.