Pattern GOF e UML
Post date: Mar 30, 2015 10:47:39 AM
Strutturali
Adapter
Espone un interfaccia base che può essere usata per rendere compatibili sistemi esterni con un determinato package.
Es.: Package "Taxes" espone <<interface>> ITaxCalculatorAdapter
Façade
Usato nel sistema, per evitare accoppiamenti indesiderati.
Fornisce un interfaccia a livello di package come un mega adapter di adapter. I client interni collaborano con la façade, non con i componenti interni del sottosistema.
Proxy
Usato per reindirizzare servizi remoti quando non disponibili. Fornisce un accesso alternativo all'oggetto reale.
Creazionali
Comportamentali
Strategy
Definendo una famiglia di algoritmi, posso renderli intercambiabili in base al client che voglio usare.
Es.: Ho la famiglia di protocolli composta da: "NFC", "Bluetooth", "InfraRed". La mia classe DataTransfer può utilizzare in maniera intercambiabile uno dei 3 e chiamare il loro metodo comune "Transfer()", derivato dalla classe padre "Protocol".