Resources
Assignments
- High-Low Guessing Game (basic object programming) (due 1/28/18)
- Rational numbers (class concepts) (due 2/11/18)
- Old McDonald (object-oriented programming, polymorphism) (due 2/18/18)
- Two-dimensional cellular automaton (two-dimensional array, class concepts, methods) (due 2/25/18)
- TicTacToe (classes and objects, simple 2D array) (due 3/11/18)
- Dungeon explorer (linked list with generics) (due 4/8/18)
- Creating a maze (using linked lists and stacks) (due 4/15/18)
- Sort and count words (binary search tree) (due 4/22/18)
- Solve a maze (graph) (due 4/29/18)
- Koch Snowflake (mimicking recursion with a queue, multithreading) (due 5/6/18)
Notes
The course notes are a supplement to the text, but are not intended to replace it.
- Course introduction, online resources (week of 1/16)
- Namespaces (week of 1/16)
- Class concepts and object-oriented programming (week of 1/23)
- Creating and using a package (week of 1/23)
- Classes and objects in more depth (week of 1/30)
- Array class and arrays in Java (week of 2/6)
- Exceptions (week of 2/13)
- Assertions (week of 2/13)
- String notes, resources, and demonstrations (week of 2/20)
- Regular expressions (week of 2/20)
- Sequential access file notes (week of 2/27)
- File class notes (week of 2/27)
- Automating documentation with javadoc
- Annotations
- Logging
- Multi-dimensional arrays (week of )
- Midterm exam: 3/8 (12:30 PM - 1:45 PM)
- Spring break: 3/12 - 3/18
- Recursion (week of 3/20)
- Searching, sorting, algorithm complexity (week of 3/27)
- Sorting continued [quicksort, heapsort implementations] (week of 4/3)
- Generics (week of 4/10)
- Linked lists, stacks, queues (week of 4/17)
- Binary search trees (week of 4/24)
- Graphs (week of 5/1)
- Review of GUI concepts from CIS 160 (week of 5/8)
- Final exam: 5/10 (Noon - 1:50 PM)