- COMP.CS.140
- 10. Work Distribution and Working in a Team
- 10.4 ⌛⌛ Standings & JavaDoc
⌛⌛ Standings & JavaDoc¶
Submit your code as a Maven project. Fetch task material from student_template_project
.
Also this task concerns creating JavaDoc documentation for classes. This task will use the
class Standings
(and its inner class Team
) from a previous Standings task almost as
such.
The task material provides an example JavaDoc documentation. You should reorganize and modify the
classes Standings
and Team
in such manner that Java’s javadoc
tool will generate
documentation similar to the provided example documentation.
You should on one hand add suitable JavaDoc comments into the code files, and on the other hand also do some small modifications: the example documentation reflects some changes in comparison to the previous Standings task.
The classes now belong to the package
fi.tuni.prog3.standings
.Some member functions declare specific thrown exception types.
The member function
getTeams
returns aList<Team>
instead ofArrayList<Team>
.
This allows the implementation to use internally any type of list that implements the interface
List
instead of being tied to use specificallyArrayList
.The member function
printStandings
now received aPrintStream
object as a parameter.
Your code will be handled as a Maven project. The minimum requirement is that the code must reside
in the directory src/main/java
and follow the usual package-based directory structure. The
actual functionality of the classes will not be tested, but the code must compile without errors.
In this task you should note that:
The package
fi.tuni.prog3.standings
does not need a separatepackage.info.java
file as the example documentation does not provide any description for it.The description of the class
Standings
contains a bulleted list. Note that JavaDoc comments may contain HTML formatting, so you may use theul
element: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/ulThe description of the class
Standings
constructor contains a link to the description of the member functionreadMatchData
. You may create one by using a JavaDoclink
annotation:
https://docs.oracle.com/en/java/javase/17/docs/specs/javadoc/doc-comment-spec.html#link
The description of the member function
readMatchData
contains three separate paragraphs. You may separate the paragraphs by using the HTMLp
element: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/p
Testing¶
The grader seeks to check whether the JavaDoc documentation generated from your code files is
similar with the provided example documentation. To be more precise, the check concerns the HTML
files in the subdirectory apidocs/fi/tuni/prog3/standings
(you may view the files in a browser
and compare them with the example documentation).
In order to make the documentation checks work smoothly, it is highly recommended that you copy-paste the JavaDoc comment texts more or less directly from the example documentation.
Although your submission should consist of a Maven project, you do not have to use Maven for
generating the JavaDoc documentation on your own computer. You may instead use the javadoc
tool
directly e.g. as
javadoc -d apidocs src/main/java/fi/tuni/prog3/standings/Standings.java
and then compare the
HTML files in the directory apidocs/fi/tuni/prog3/standings
with the corresponding files in the
example documentation.
But as mentioned further above, your code does need to compile without errors. The grader will
both compile your code with Maven as mvn package
and generate the JavaDoc documentation.
There are no special requirements regarding your Maven project file; the grader will anyway use
its own project file when compiling your code.
A+ presents the exercise submission form here.