Skip to content
Snippets Groups Projects

Resolve "Argomento 7: Progettazione"

Files

@@ -6,6 +6,6 @@ Per esempio, considerando il metodo `draw()`, __è responsabilità del chiamante
Se `draw()` viene chiamato quando il mazzo è vuoto ci troviamo in una situazione di __violazione di contratto__ e può anche esplodere la centrale nucleare.
Per specificare il contratto si possono utilizzare delle __asserzioni__ o il `@pre` nei __commenti__.
Le prime sono particolarmenti utili in fase di sviluppo perché interrompono l'esecuzione del programma in caso di violazione, ma vengono solitamente rimosse in favore delle seconde nella fase di deployment.
Le prime sono particolarmente utili in fase di sviluppo perché interrompono l'esecuzione del programma in caso di violazione, ma vengono solitamente rimosse in favore delle seconde nella fase di deployment.
Un'altro approccio è la __programmazione difensiva__ che al contrario delega la responsabilità del soddisfacimento delle precondizioni al _chiamato_, e non al chiamante.
Loading