Ecco, sempre a riguardo. Una volta scelto come fare il dizionario (file xml) ho un altro problema.

In pratica io ho la mia classe PartProgram, la quale contiene un elenco di Block(s), ognuno dei quali contiene la sua bella lista di Instruction.
E fin qui direi che va tutto bene...

Un oggetto PartProgram viene istanziato caricando un file: io gli passo il nome del file del part program e lui lo carica, fa il parsing, e ho la mia rappresentazione del programma.

Ma come lo abbino al dizionario?
Mi sembra logico che il dizionario debba essere una classe separata (lo chiamo dizionario perchè il concetto è simile, ma le funzionalità sono un po' diverse da uno standard), che viene creata da un file a sè stante e indipendente dal part program caricato.

Ora come ora la mia class Istruction contiene solo il "codice operativo" e l'"argomento", ma non la descrizione. Questo perchè ovviamente non posso caricare una descrizione, dato che tutti questi oggetti vengono creati nel caricamento del part program che non contiene le informazioni del dizionario.

Pensavo di aggiungere un puntatore ad una string all'interno della classe Istruction. In questo modo, quando viene richiesta la descrizione dell'istruzione, se il puntatore è null viene cercata nel dizionario "just in time" alla prima richiesta.

Può essere una buona idea secondo voi?