Sto esplorando pattern composito per scrivere un file system, uno dei miei requisiti è creare un elemento radice univoco in questo caso una directory, simile a Linux System ('/'), ho visto molti esempi di creare questo nel client in questo modo:
class CompositeDemo
{
public static StringBuffer g_indent = new StringBuffer();
public static void main(String[] args)
{
Directory one = new Directory("dir111");
Directory two = new Directory("dir222");
Directory thr = new Directory("dir333");
File a = new File("a");
File b = new File("b");
File c = new File("c");
File d = new File("d");
File e = new File("e");
one.add(a);
one.add(two);
one.add(b);
two.add(c);
two.add(d);
two.add(thr);
thr.add(e);
one.ls();
}
}
Fonte: link
Poiché la mia esigenza è quella di creare un nodo radice univoco, è consigliabile creare una nuova classe che abbia un solo elemento radice? Posso usare un modello di design Singleton?