In questo elaborato vengono approfonditi l’utilizzo di due design pattern, Singleton e Observer, e l’utilizzo di buone pratiche da rispettare nella progettazione delle classi, per garantire il comportamento desiderato del programma.
Il Singleton è un pattern creazionale che ha lo scopo di assicurarsi che una classe abbia una sola istanza e provvedere un punto di accesso globale a questa istanza. L’Observer è un pattern comportamentale che permette di definire una dipendenza uno a molti tra oggetti in modo che quando un oggetto cambia stato, vengano notificati tutti i i suoi osservatori.
Per descrivere quanto detto, si è scelto di rappresentare lo scenario di un autonoleggio.