Presentasjon lastes. Vennligst vent

Presentasjon lastes. Vennligst vent

Gruppe 6 Gunnar Henrik Mathias Morten Ronny Svein Ivar.

Liknende presentasjoner


Presentasjon om: "Gruppe 6 Gunnar Henrik Mathias Morten Ronny Svein Ivar."— Utskrift av presentasjonen:

1 Gruppe 6 Gunnar Henrik Mathias Morten Ronny Svein Ivar

2 Proxy Definisjon: et objekt som erstatter et annet, mer komplekst objekt

3 Real-life eksempel: En sjekk kan fungere som en proxy for penger på en konto. Bruker sjekken for å gjøre en handel, selv om verdiene egentlig ligger i pengene på kontoen. Sjekken blir altså et kortsiktig substitutt.

4 UML-diagram

5 Egenskaper  Proxyen kan instansiere og kontrollere det virkelige objektet  Kan verifisere at klienten har rettigheter til informasjon på det virkelige objektet.  Skjule kompleksitet  Gjøre lasting av tunge objekter mer elegant Vi ser på et eksempel:

6 Fotogalleri  Hvordan browse et fotogalleri på 5 GB?  Vi bruker thumbnails (proxy), som laster det virkelige objektet når vi spør etter det.  Programmet trenger bare å laste den informasjonen vi spør etter.

7 Run-time aClient kontakter aProxy for å få informasjon om aRealSubject.

8 Forskjellige typer  Virtual proxy: proxyen instansierer det virkelige objektet når klienten spør etter det  Remote proxy: skjule kommunikasjon mellom objekter med stor avstand (nettverk)  Access proxy: sjekker klients rettigheter før metoder/informasjon gjøres tilgjengelig  ”Smart” proxy: legge til funksjonalitet som gjør at objektet blir sikrere uten å forandre på det…

9 Chain of Responsibility  Et mønster for å skille sender og mottaker.  Alle mottakere danner et kjede, lignende en linked list.  Senderen av en ordre vet ikke hvem som behandler ordren.  En ordre blir sent til den første mottakeren, som så må bestemme seg for om den vil behandle ordren eller sende den videre.

10 Chain of Responsibility  En sender trenger derfor kun å vite hvem som er det første elementet i mottaker listen.  Ordren vil bli sendt videre helt til en av mottakerne behandler den, eller til det ikke er flere mottakere igjen i listen.  En er med andre ord ikke garantert at en ordre vil bli gjennomført, og det bør derfor lages et ”sikkerhetsnett” som fanger opp tilfeller der ordren ikke blir behandlet.

11 Kan være nyttig i sitasjoner der:  Du vil ha en kommando utført uten å bry deg om av hvem/hvordan.  Flere mottakere kan utføre ordren og valget av hvem må skje automatisk.  Du vil sette opp en dynamisk liste av mottakere.  Vil ha et hierarkisk mottaker system der en mottaker har prioritet over en annen.

12 Generelt eksempel

13 Jobbsammenheng  Problem: Du trenger fri fra jobben i morgen pga at du skal ut i kveld.  Hva gjør du da? Spør nærmeste overordnete  Hva gjør han? Svarer hvis han kan, eller han sender forespørselen videre til sin nærmeste overordnete  Hva gjør så han? Samme som han forrige

14 Mynteksempel


Laste ned ppt "Gruppe 6 Gunnar Henrik Mathias Morten Ronny Svein Ivar."

Liknende presentasjoner


Annonser fra Google