Presentasjon lastes. Vennligst vent

Presentasjon lastes. Vennligst vent

Design patterns: State og Strategy

Liknende presentasjoner


Presentasjon om: "Design patterns: State og Strategy"— Utskrift av presentasjonen:

1 Design patterns: State og Strategy
Gruppe 10: Erlend Fuglum Claus Håvik Tommy Kjelsrud Erik Solem Tom Egil Sørlie Hans Tømmerholt Mr. Fix-it: Bjørn Wilhelmsen

2 Både State og Strategy er typer av Behavioural design patterns
…altså snakker vi om hvordan systemer/objekter oppfører seg og hvilke handlinger de foretar…

3 Problem: Tilstand og oppførsel

4 En mulig løsning: State
Å skille ut et objekts tilstander som egne objekter. Disse objektene er subklasser av en abstrakt tilstandsklasse. Tilstanden bestemmer hvilken oppførsel programmet har Logikken for endring av tilstander kan plasseres i den abstrakte tilstandsklassen eller i kontekstklassen

5 Hva betyr dette? Fordeler: Ulemper:
Du kan lett legge til, endre og fjerne tilstander uten at klienten trenger å bry seg Systemet blir mer oversiktlig Du slipper ”grisete” blokker med betingelser i koden Ulemper: Flere objekter, tyngre eksekvering

6 Eksempel: Et grafikkprogram
Tilstander er verktøyene: Pensel Blyant Kloning Klippe, lime … ju neim it

7 Problem: Flere veier til målet

8 En mulig løsning: Strategy
Fremgangsmåtene, eller algoritmene, for å løse et problem skilles ut som egne objekter. Objektene er subklasser av en abstrakt strategiklasse.

9 Hva betyr dette? Ulemper: Annet: Fordeler
Detaljer er om fremgangsmåtene er skjult for klienten. Fremgangsmåter kan i stor grad endres og byttes ut, uten at det har store konsekvenser for klienten. Mer oversiktlig. Ulemper: Flere objekter. Tyngre eksekvering. Annet: Klienten må ofte foreta et valg og vite noe om de forskjellige strategiene i en gitt situasjon.

10 Eksempel: Tegning av spill
Forskjellige krav til grafikk på forskjellige plattformer som en PDA, en PC og en sterk PC. Fremgangsmåten velges av klienten, avhengig av hvilken plattform den kjører på.

11 Eksempel: Tegning av spill

12 Eks: Sorteringsanimasjoner
Forskjellige sorteringsalgoritmer kan animeres. Disse kan legges i egne klasser. Klienten kan velge direkte, eller gjennom f.eks en fabrikk.

13 Oppsummering I State flytter du håndteringen av en tilstand til en egen klasse. Tilstander kan lett endres, legges til og fjernes. I Strategy innkapsles fremgangsmåter i egne klasser.

14 The music´s over…


Laste ned ppt "Design patterns: State og Strategy"

Liknende presentasjoner


Annonser fra Google