A minimum of 50% on all four aspects of the grade is necessary but not sufficient to pass this class. This means, if you receive less than 50% on any one of the four parts (programming assignments, quizzes, review questions, or final), you will not pass, however, just because you score at least 50% on each part does not imply that you will necessarily pass. For example, someone that scored 51% on each of the four parts would almost certainly, NOT pass. The policy is intended primariliy to prevent students from "blowing off" the homework or programming assignments because they only count 10% and 20% of the grade respectively. You cannot pass this class if you do not do the homework and programmming assignments.
You may freely give and receive help with the computer facilities, editors, UNIX, debugging techniques, the meaning and proper use of Java constructs, etc.. You should not discuss your design or implementation of the programming assignments with students other than your partner until after they are turned in. In particular you should not view another person/pair's program, or allow someone (other than your partner) to view any part of your program, prior to successfully completing that assignment (see below). Obviously, copying any part of another person/pair's program, or allowing your program to be copied is not permitted. A program, Moss, will be in use to detect copying. If you have any questions on this important point, please see me.
Programming assignments, grading policy, and due dates can be found on the class web page homework section.
To help you decide if you should be in this class, please complete the pre-req-check programming assignment which is due at 11pm on the first day of class, Friday September 26th.
If you qualify for classroom accommodations because of a disability, please get an Accommodation Authorization from the Disability Resource Center (DRC) and submit it to your instructor (Charlie McDowell) in person outside of class (e.g., office hours) within the first two weeks of the quarter. Contact DRC at 459-2089 (voice), 459-4806 (TTY), or http://drc.ucsc.edu for more information on the requirements and/or process.
| Date | Topic | Reading |
|---|---|---|
| September 26 | run/compile Java, main(), primitive types, int divide, Processing | JBD Chapter 2 |
| September 29 | if/else, String, Scanner | Sections 2.5, 2.6, 3.1-3.4 |
| October 1 | for/while | Chapter 3 |
| October 3 | Practice: if/for/while logical expressions | Chapter 3 |
| October 6 | Methods/Functions | Sections 4.1-4.8 |
| October 8 | passing references (String and StringBuffer) | Section 4.8, 6.13 |
| October 10 | Practice: top-down design | Section 4.9, 4.12, 4.13 |
| October 13 | 1D arrays - testing, mutation testing contest | Sections 5.1-5.5 |
| October 15 | ArrayList - using the DrJava debugger | Sections 5.13 |
| October 17 | NEW LOCATION - RESEARCH DAY: Practice: review call by reference using arrays |   |
| October 20 | Using a Class to represent structured data, constructors, toString() | Chapter 6, especially section 6.5, 6.8, 6.11 |
| October 22 | call by reference using object "pointers" | Chapter 6, especially section 6.13 |
| October 24 | Practice: working with classes | Chapter 6 |
| October 27 | ADT, methods, private | Chapter 6, especially sections 6.6, 6.7 |
| October 29 | Static vs Non-static, Scope | Sections 6.9-6.14 |
| October 31 | Practice: Chapter 6 review | Chapter 6 |
| November 3 | OOD - nouns and verbs | Sections 6.18-6.19 |
| November 5 | 2d Arrays | Sections 5.10, 5.11, 5.12 |
| November 7 | Practice: 2d Arrays | Section 5.11 |
| November 10 | Inheritance | Chapter 7, especially sections 7.1-7.7 |
| November 12 | Interfaces | Chapter 7, especially section 7.8 |
| November 14 | Practice: Inheritance | Chapter 7, especially section 7.7 |
| November 17 | Swing/GUI | Chapter 8, especially sections 8.1-8.4 |
| November 19 | Drawing with Swing | Chapter 8, especially sections 8.5, 8.7 |
| November 21 | Practice: Applets | Chapter 8, especially section 8.8 |
| November 24 | Simple Linked List | Sections 12.1-12.4 |
| November 26 | Practice: Stacks and Lists |   |
| December 1 | Recursion | Section 4.10 |
| December 3 | Recursion on a list | Section 12.4 |
| December 5 | Practice: Recursion |   |
| December 9 | Final Exam 7:30-10:30PM |   |