We delegate graph visualization to the GraphViz library www.graphviz.org, and in particular to the dot and neato UNIX utilities. These accept the input graph in a particular format
digraph graphName {
# list of nodes with special properties
0 [ label = "thenode", color = red ];
# list of arcs
0 -> 1;
1 -> 2;
}
So the task performed by WET is to download a given URL and explore
its links up to the
-th recursion level, then to put the obtained
graph in the above format.
This chapter starts with a section on the software architecture; each class is then described and its implementation mostly delegated as exercise. The software architecture section does not contain any exercises, but it is a prerequisite for understanding what follows. Moreover, it is a (crude) example showing how to formalize the architecture of a software.