CS 205 Course Materials, Fall 2023
CS 205 Course Materials
java4python. This is a quick introduction to
Java for those who already know Python.
Think Java, 2nd edition, How to Think Like a
Java, Java, Java: Object-Oriented Problem
Solving, focusing on object-oriented design principles.
Programming Using Java.
This is a free book, covering a lot of Java basics, for anyone wanting a
complete Java textbook. Chapter 6 is a nice treatment of GUI
Java 8 API
Style, Google's coding standards for source code in Java.
- Eclipse development environment how-tos:
- Violet UML Editor:
EXE file for Windows, JAR file for other platforms. Also available on
Project Programming Pairs
- Stephanie and David
- Gerrit and Brandon
- Riley and Alee
- Mishuk, Abdul, and Sakib
- Derek and Enzo
- Brian and Kenneth
- Sonny and Ethan
Unless stated otherwise, readings refer to the Object Oriented Design
and Patterns textbook available in Canvas.
- Lab 0A: Java;
one class day, start Aug. 24
Read: Chapter 1. Also
read java4python, skipping the
following: Sections 2.3 and 3.3, all of Chapter 4, and Sections 4, 5,
and 8 of Chapter 5.
Handout: Lab 0A
Starter code: lab0aStarter.zip
- Lab 1: Object-Oriented Design; two class days, start Aug. 29
Read: Chapter 2
Handout: Lab 1
- Lab 0B: Java --- GUI Programming; one class day, start
Read: Review Chapter 1
Handout: Lab 0B
Starter code: lab0bStarter.zip
- Project: Part 1; three class days, start Sept. 7, due
Handout: Project Part 1
- Project: Part 2; four class days, start Sept. 19
Handout: Project Part 2.
See the YouTube
how-to above if you don't know how to create a new Java project in
Eclipse, or if you don't know how to create new class files in Eclipse.
IMPORTANT: Be sure to do this
-- Configuring Eclipse to Use
Java 8 and Creating a new Java Project.
Day 4 notes
- Lab 2: Interface Types and Polymorphism; two class days, start
Read: Chapter 4
Handouts: Lab 2,
Starter code: lab2Starter.zip
Day 1 notes,
Day 2 notes
Example of how a PathIterator would be
- Lab 3: Patterns and GUI Programming; three class days, start
Read: Chapter 5
Handouts: Lab 3,
Lab 3 Text Example,
Lab 3 Graph Example,
Day 1 notes
- Project: Part 3; four class days, start Oct. 24
Handout: Project Part 3.
guiDemo.zip, an Eclipse project archive that
demonstrates several basic GUI elements.
Visual Guide to Swing Components. I found this using the Google
java swing tutorial site:edu
I encourage you to use this and other web resources to get ideas and
implementation specifics for your project's GUI.
- Lab 4: Multithreading; two class days, start Nov. 7
Read: Chapter 9
Handout: Lab 4
Starter code: lab4Starter.zip
- Project: Part 4; three class days, start Nov. 14
Handout: Project Part 4.
- Project: Part 5; four class days, start Nov. 28
Handout: Project Part 5.
Last updated September 19, 2023.
Send mail to kelliher[at]goucher.edu