The course content is divided into multiple topics that you should strive to master during that week of the course. The instruction for a topic includes classroom instruction, slide deck, and optional textual instruction, code examples, starter code, and assignments.
⚠ Make sure you observe the due dates specified in Canvas for each of the course assignments.
- Schedule for Professor Jensen's Sections
- Schedule for Dr. Rodham's Sections
- Schedule for Dr. Wilkerson's Sections
- Java Fundamentals
- ☑ Phase 0: Chess Moves
- Java Object Class
- Classes and Objects
- Java Records
- Interfaces and Abstract Classes
- Copying Objects
- Java Exceptions
- Java Collections
- Object Oriented Design
- Design Principles
- Java Inner Classes
- ☑ Phase 1: Chess Game
- Java Input and Output (IO)
- Java Generics
- Java Lambdas
- JSON and Serialization
- ☑ Phase 2: Chess Server Design
- HTTP
- cURL
- Web API
- ☑ Phase 3: Chess Web API
- Writing Quality Code
- Style Checking
- Unit Testing
- Code Coverage
- Relational Model
- MySQL
- SQL
- JDBC
- ☑ Phase 4: Chess Database
- Securing Passwords
- Logging
- Debugging
- Defensive Programming
- Console UI
- ☑ Phase 5: Chess Pregame
- WebSocket
- ☑ Phase 6: Chess Gameplay
- Computer Security
- Concurrency
- Command line tools
| Icon | Meaning |
|---|---|
| ⚠ | Important concepts, or pitfalls, to note |
| ☑ | Assignments that you must submit in Canvas |