Ho fatto qualche lettura sulla relazione <<instantiate>>
nei diagrammi delle classi UML. È una relazione di dipendenza in cui una parte dipende dall'altra.
Tuttavia, non sono sicuro chi dipende da chi: la classe di creazione di istanze dipende dalla classe istanziata o viceversa? Ho trovato risposte contraddittorie a questo.
Chiamiamo la classe di istanziazione ClassA e la classe istanziata ClassB.
Da una parte, ClassA deve avere un'istruzione new ClassB()
nel suo codice. Il che significa che deve "conoscere" ClassB - un classico esempio per spiegare che cos'è la dipendenza. Ciò significa che ClassA (la classe di creazione di istanze) dipende da ClassB.
Tuttavia logicamente l'esistenza di istanze di ClassB potrebbe dipendere da un'operazione eseguita da ClassA.
Che è corretto: si dice che la classe di istanziazione dipende dalla classe istanziata (che significa che la freccia tratteggiata punterà dalla classe di istanziazione alla classe istanziata), o la classe istanziata si dice che dipenda dalla classe di istanziazione (quindi la freccia punta nella direzione opposta)?