Ciao a tutti,
in riferimento al zilione di thread che ho aperto in questi ultimi giorni, vi propongo un caso "real-world" su cui ragionare. Confesso che spero in qualche vostro illuminato (e illuminante) suggerimento, perché vorrei evitare di mettere su qualcosa che sia uno schifo "by design".
La mia situazione è la seguente (in realtà è un esempio :-p): ho un sistema di gestione appuntamenti in cui un utente registrato o anonimo si può prenotare per un appuntamento. All'appuntamento è associata una lista di oggetti (che ho chiamato Target) che sono gli "oggetti" dell'appuntamento (i.e. vari uffici, ecc ecc).
Se dovessi descrivere il modello OO con cui "mi piacerebbe lavorare", avrei:
interface IAttendant { ... }
class AnonymousGuest : IAttendant { ... }
class RegisteredUser : IAttendant { ... }
interface ITarget { ... }
class Office : ITarget { ... }
class FooOffice : ITarget { ... }
class BarOffice : ITarget { ... }
//qui siamo allo snodo;
class Appointment {
IAttendant Attendant { ... }
ICollection<ITarget> TargetSet { get; private set; }
}
I problemi sono:
Ogni altro commento/suggerimento/critica è il benvenuto.
Ciao a tutti e grazie in anticipo,
petrux
--