In UML, una relazione di aggregazione ha una direzionalità, che può essere
-
unidirezionale, dove Player
conosce il Pet
, ma non il contrario. Questo di solito è indicato con una freccia alla fine della riga:
Player < > ------ > Pet
-
bidirezionale, in cui sia Player
che Pet
possono accedere l'un l'altro. Questo di solito è indicato dall'assenza di una freccia (come hai usato nella domanda):
Giocatore < > ------- Animale domestico
Nella maggior parte dei linguaggi di programmazione, non esiste un vero equivalente della relazione bidirezionale, quindi viene solitamente emulato utilizzando due relazioni unidirezionali (puntatori / riferimenti) e un po 'di logica per garantire che se si seguono entrambi i collegamenti, finire di nuovo nello stesso oggetto.