# | Day | Date | Comments | Topics | Handouts |
Week 1: Introduction (Ch 1) + Number Systems (App B) + Unicode (App C) | |||||
1 | Tue | 15-Jan | Welcome! | Course Policies Introduction Number Systems Unicode |
notes hw1 (due Fri 18-Jan) blackboard how-to |
2 | Thu | 17-Jan | Introduction to Java Programming (Hello World!) |
notes | |
-- | Fri | 18-Jan | hw1 due | Recitation | hw2 (due Fri 25-Jan) |
Week 2: Data and Expressions + Graphics | |||||
3 | Tue | 22-Jan | quiz 1 | Ch 2: Data and Expressions (1 of 2) Character Strings + String concatenation Variables and Assignment "int" Variables Scanner (from console, files, Strings) |
notes |
4 | Thu | 24-Jan | Ch 2: Data and Expressions (2 of 2) Primitive Data Types Increment and Decrement Operators Assignment Operators + Precedence Data Conversion Graphics |
notes BasicGraphics.java BasicGraphicsDemo1.java DrawCenteredString.java DrawImageFromFile.java (and sampleImage.jpg) |
|
-- | Fri | 25-Jan | hw2 due | Recitation | hw3 (due Fri 1-Feb) |
Week 3: Using Classes and Objects | |||||
5 | Tue | 29-Jan | quiz 2 | Review Ch 2 + Quiz 2 | notes |
6 | Thu | 31-Jan | Ch 3: Using Classes and Objects (1 of 2) Creating Objects + Aliases The String, Random, and Math classes Packages |
notes | |
-- | Fri | 1-Feb | hw3 due | Recitation | hw4 (due Fri 8-Feb) |
Week 4: Using Classes and Objects + Intro to Writing Methods + Intro to Conditionals and Loops | |||||
7 | Tue | 5-Feb | quiz 3 | Style Ch 3: Using Classes and Objects (2 of 2) Converting Strings + Other Types The printf method Wrapper classes + Autoboxing |
notes |
8 | Thu | 7-Feb | On the Merits of Attending Recitation Ch 4+5: (1 of 3) Intro to Methods, Conditionals, and Loops |
notes | |
-- | Fri | 8-Feb | hw4 due | Recitation | hw5 (due Fri 15-Feb) |
Week 5: Conditionals, Loops, and Methods | |||||
9 | Tue | 12-Feb | Review: Methods, If Statements, For Loops |
notes bonus project 0 |
|
10 | Thu | 14-Feb | quiz 4 | Style (Test Cases) Ch 4+5 (2 of 3) Note: This material is covered on quiz 5. |
notes |
-- | Fri | 15-Feb | hw5 due | Recitation | hw6 (due Fri 22-Feb) |
Week 6: Practice (Conditionals, Loops, and Methods) | |||||
11 | Tue | 19-Feb | no quiz | Style Magic Numbers, Duplicate Code, Else... Ch 4+5 (3 of 3) Practice: Quiz 4 Redux (Quiz4.java) |
notes Bonus Lecture #1: How to turn a bucket of sand into a computer. (Circuits, Architecture, Machine + Assembly Language, etc) bonus notes |
12 | Thu | 21-Feb | Review | notes | |
-- | Fri | 22-Feb | hw6 due | Recitation | hw7a (due Tue 26-Feb) |
Week 7: More Practice (Conditionals, Loops, and Methods) | |||||
13 | Tue | 26-Feb | hw7a due quiz 5 |
Review: Methods, Loops, and Conditionals | hw7b (due Fri 29-Feb) notes |
14 | Thu | 28-Feb | Review | notes | |
-- | Fri | 29-Feb | hw7b due | Recitation | hw7c (due Tue 4-Mar) |
Week 8: Test Review + Test 1 | |||||
15 | Tue | 4-Mar | hw7c due no quiz |
Test Review Tic-Tac-Toe using strings, methods, loops, and conditionals |
notes |
16 | Thu | 6-Mar | Test 1 | Test 1 | Bonus Lecture #2: 2d Arrays, Matrix Inversion, Power Sums bonus notes |
-- | Fri | 7-Mar | no hw due | No Recitation | |
Spring Break -- No Classes | |||||
-- | Tue | 11-Mar | No Classes | ||
-- | Thu | 13-Mar | No Classes | ||
Week 9: Arrays + Searching + Sorting | |||||
17 | Tue | 18-Mar | no quiz bonus1 due |
Ch 7: Arrays (of ints) | notes |
18 | Thu | 20-Mar | Ch 9.5: Searching linear and binary search Ch 9.4: Sorting bubble, insertion, selection sorts |
notes Bonus Lecture #3: How to write simple 2d Board Games (Space Invaders) bonus notes CoStarsComponent.java SampleGraphics.java Applet wrapper notes |
|
-- | Fri | 21-Mar | no hw due | Recitation | hw8a (due Tue 25-Mar) MusicalNotePlayer.java |
Week 10: Advanced Arrays (Combinatorial Iterators) + Writing Classes | |||||
19 | Tue | 25-Mar | quiz 6 bonus2 due hw8a due |
java.util.Arrays class Combinatorial Iterators Permutations, Combinations, Base-N Counting, and PowerSets |
notes Permutations.java Combinations.java BaseNCounting.java PowerSets.java hw8b (due Fri 28-Mar) |
20 | Thu | 27-Mar | Ch 4: Writing Classes Instance Methods Instance Fields (variables) |
notes | |
-- | Fri | 28-Mar | hw8b due | Recitation | hw9a (due Tue 1-Apr) |
Week 11: Writing Classes + The Java Collection Framework | |||||
21 | Tue | 1-Apr | quiz 7 bonus3 due hw9a due |
Ch 7.5: Variable-length Parameter Lists Ch 4: Writing Classes (cont) Encapsulation Visibility Modifiers Scope Disambiguating with "this" Accessors and Mutators Constructors toString methods |
notes hw9b (due Fri 4-Apr) Bonus Lecture #4: How to write Tetris |
22 | Thu | 3-Apr | Ch 12: Collections The Java Collection Framework (JCF) List, Set, Map, ArrayList, HashSet, HashMap, Stack, Queue, Arrays, Collections Generics |
notes | |
-- | Fri | 4-Apr | hw9b due | Recitation | hw10a (due Fri 11-Apr) |
Week 12: Writing a Custom ArrayList | |||||
23 | Tue | 8-Apr | quiz 8 | Ch 7.3: Arrays of Objects Writing a Custom ArrayList (1 of 2) |
notes hw10b (due Fri 11-Apr) |
24 | Thu | 10-Apr | (from Ch 6): Interfaces Comparable, Iterator, Iterable MouseListener + MouseAdapter class Writing a Custom ArrayList (2 of 2) |
notes | |
-- | Fri | 11-Apr | hw10a due hw10b due |
Recitation | hw11 (due Fri 25-Apr) |
Week 13: Object-Oriented Design | |||||
25 | Tue | 15-Apr | quiz 9 | Ch 6: Object-Oriented Design Software Development Activities Static Class Members Class Relationships Method Design Method Overloading Testing |
Bonus Lecture #5a: Maze Generation and Maze Solving Bonus Lecture #5b: How to write a (very simple) text adventure notes |
- | Thu | 17-Apr | No Classes (Carnival) | ||
-- | Fri | 18-Apr | no hw due | No Recitation (Carnival) | |
Week 14: Inheritance + Polymorphism + Recursion | |||||
26 | Tue | 22-Apr | Sorting Redux: swap, compareTo bubblesort, insertionsort, selectionsort Ch 8: Inheritance Creating Subclasses Overriding Methods "this" and "super" references Class Hierarchies How to make a sortable custom ArrayList Implement List + ListIterator interfaces or Subclass AbstractList (part 1) |
notes | |
27 | Thu | 24-Apr | sortingQuiz10 | Inheritance: Subclassing AbstractList (part 2) Ch 9: Polymorphism (overview) Ch 11: Recursion (overview) |
notes |
-- | Fri | 25-Apr | quiz11 hw11 due |
Recitation (Test 2 Review) | |
Week 15: Test 2 + Everything Else... / Final Exam Prep | |||||
28 | Tue | 29-Apr | Test 2 | Test 2 | |
29 | Thu | 1-May | Ch 11: Recursion (continued) Towers of Hanoi Ch 10: Exception Handling (overview) Final Exam Information |
notes Final Exam Information Dr. Miller's Review
Bonus Lecture #6: |
|
-- | Fri | 2-May | no hw due | Recitation (Final Exam Review) | |
Week 16/17: | |||||
-- | Mon | 5-May 5:30pm |
Final Exam, DH A310, 5:30pm - 8:30pm |