perche' un cliente dovrebbe vedere i dati di altri utenti? un cliente e' un cliente! avra' i suoi metodi per vedere le sue cose!quindi se un Cliente o un Fornitore ereditasse l'anagrafica, andrebbe a leggere i dati di CC e indirizzo di altri utenti (tipo Fornitore o Agenzia). Quindi non è ereditarieta.
class Anagrafica
nome
cognome
indirizzo
end Anagrafica
class Cliente extend Anagrafica
cod_cliente
get_nome()
get_Cognome()
...
end Cliente
non e' detto! puoi eliminare un cliente, ma mantenere l'anagrafica. l'anagrafica dice che esiste tizio e caio, poi se e' o non e' un cliente e' un altro paio di maniche.E' sicuramente Associazione. Solo che siccome è un legame "forte" direi composizione, perchè se elimino un Cliente, elimino l'anagrafica e tutto ciò che c'è dietro!
tizio puo' essere sia un cliente sia un fornitore(per esempio) quindi se elimini il cliente e l'anagrafica il fornitore non avra' nome. a meno che tu non abbia dati ripetuti che non e' bene.
cmq ti dico che SECONDO ME non c'e' un modo giusto e un modo sbagliato! dipende da come si fanno le cose. sono scelte insomma. Quello che sostengo io e' occhio alle composizioni! sono legami molto forti che creano troppa compattezza e quindi poca elasticita'. ma daltronte esistono e a volte sono indispensabili.
ciao