Your SlideShare is downloading. ×
Lezione 03 - Interface
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Lezione 03 - Interface

393

Published on

Published in: Education, Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
393
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
24
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Ingegneria del Software
  • 2. Introduzione al pattern…
  • 3. Problema introduttivo (1/4) • Durante la progettazione di un software amministrativo, si prevede la presenza di una classe AddressPanel che riesce a visualizzare correttamente gli indirizzi di tutte le classi che contengono un indirizzo. – Clienti – Fornitori – Commercialista – Avvocato – Impiegati – … Come garantire la coerenza nelle firme dei metodi? Come garantire la coerenza nelle firme dei metodi? Es. String getAddress() Es. String getAddress() Ingegneria del Software - A.A. 2003/2004
  • 4. Problema introduttivo (2/4) Ingegneria del Software - A.A. 2003/2004
  • 5. Problema introduttivo (3/4) AddressIF ReceivingLocation Ingegneria del Software - A.A. 2003/2004
  • 6. Problema introduttivo (4/4) Ingegneria del Software - A.A. 2003/2004
  • 7. Presentazione del pattern Interface
  • 8. Il pattern Interface (1/4) • Nome Interface [GoF95] • Synopsis Rende una classe che usa dati e dai servizi offerti da istanze di altre classi indipendente da queste ultime. Ciò è possibile perché la classe in questione accede alle istanze attraverso un interfaccia. • Context Cfr. esempio introduttivo • Forces Quando si è costretti a richiedere a una o più classi l’implementazione di uno o più metodi Ingegneria del Software - A.A. 2003/2004
  • 9. Il pattern Interface (2/4) • Solution - Gli “attori” del pattern Interface sono: – Client – IndirectionIF Da Context… – Service … a Solution Ingegneria del Software - A.A. 2003/2004
  • 10. Il pattern Interface (3/4) • Consequences - Permette la separazione tra la definizione dei metodi e la loro implementazione - Può rendere il programma più difficile da capire Ingegneria del Software - A.A. 2003/2004
  • 11. Il pattern Interface (4/4) • Implementation Cfr. esempio introduttivo • Java API usage Esercizio: Riconoscere il pattern Interface in java.io.FilenameFilter • Code example Cfr. esempio introduttivo • Related Patterns Spesso usato insieme al Delegation Pattern Ingegneria del Software - A.A. 2003/2004
  • 12. Domande? Ingegneria del Software - A.A. 2003/2004

×