- Java 17 or above
cd /path/to/project-root
javac src/de/itemis/codingchallenge/*.java -d classes
[Titel of a Talk] [duration in minutes]min | lightning
Example:
Accounting-Driven Development 45min
Rails for Python Developers lightning
A World Without HackerNews 30min
.
.
.
java -cp classes de.itemis.codingchallenge.ConferenceTrackManagement /path/to/input_file.txt
- The
ConferenceTrackGenerator
class provides agenerator()
method API to create aConference
object representing a scheduled conference with tracks for the provided input - To generate the conference, this programm first collects all talks and fits them afterwards
in a session of a track. The remaining time of a session is the decider for accepting a talk to a session. - Example use of the API:
BufferedReader reader = new BufferedReader(new FileReader("/path/to/input_file"));
ConferenceTrackGenerator ctg = new ConferenceTrackGenerator();
Conference conference = ctg.generator(reader);
System.out.println(conference);
- A Conference contains multiple Tracks
- A Track describes a day of a Conference
- A Session represents a morning or afternoon session with a list of talks
- The Talk class represent an Event with given name and duration.