Page 1346 - Informatica dalla A a Z
P. 1346
Esercizio: Realizzare un programma per gestire la fatturazione, addebitando le fatture ai
clienti e accreditando i pagamenti ricevuti.
Svolgimento: Il progetto richiede la descrizione di un sistema di fatturazione che limite-
remo al caso di emissione della fattura ad un cliente per un solo prodotto.
Le entità rilevanti per questa descrizione sono il Cliente e la Fattura. I clienti sono descritti
con i loro dati anagrafici e il saldo dei loro pagamenti. Il saldo aumenta se al cliente viene
addebitata una fattura, al contrario diminuisce se il cliente esegue un pagamento. La fat-
tura è intestata ad un cliente e contiene la descrizione del prodotto, la quantità e il prezzo
unitario. Il totale della fattura viene calcolato sommando l’imponibile (prezzo unitario *
quantità) e l’imposta (imponibile * aliquota IVA).
Il diagramma delle classi Cliente e Fattura è
Il costruttore della classe Cliente inizializza gli attributi nome e partitala con il valore dei
parametri e azzera l’attributo saldo. I metodi addebita e paga gestiscono la posizione de-
bitoria o creditoria di ogni cliente, aumentando il saldo per ogni fattura emessa e togliendo
dal saldo quanto incassato. Il metodo stampaSituazione visualizza i dati del cliente e il suo
saldo. Ogni volta che viene creata una fattura deve essere indicato come parametro l’og-
getto di classe Clientea cui si riferisce:
Fattura ordine1 = new Fattura(computerSpa);
1342