A Java console based CLI (command-line interface) or server (HTTP or other protocol) program centered around the transport and transformation of data from one or more sources to others.
- Command-line flags, arguments, or subcommands
- File-based configuration, data persistence, or logging
- Public web API integration
- SQL database
Programs should start simple and features should be added constantly. Focus on a quickly built prototype, don't worry about architecture or best practices just yet. Once the program is working and feasible as intended, refactor for readibility and maintainibility.
- Java 8+:
- Java SE Libraries:
- Collections
- IO/NIO
- Java SE Libraries:
- Maven
- JUnit
- Persistence:
- Flat File (properties, json, csv, etc)
- PostgreSQL + JDBC
- Unit Testing
- Documentation: markdown files, javadocs comments
- Logging
- Project/Dependency Management: Maven
- Week 3 Wednesday: 5 minute presentation to QC
- Personal introduction & Project explanation
- Live demonstration
- Q&A