gruppe 9 - design pattern modeling

14
Gruppe 9 - Design Pattern modeling Per I. Jacobsen Synne Nygaard Alfred Skari Anette kjuus Per K. Førrisdal Øystein Rogstad Skule Notø

Upload: galeno

Post on 19-Jan-2016

24 views

Category:

Documents


1 download

DESCRIPTION

Gruppe 9 - Design Pattern modeling. Per I. Jacobsen Synne Nygaard Alfred Skari Anette kjuus Per K. Førrisdal Øystein Rogstad Skule Notø. Design Patterns. En metode for å presentere kunnskapen til erfarne programutviklere på en lesbar og forståelig form. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Gruppe 9 - Design Pattern modeling

Gruppe 9 - Design Pattern modeling

Per I. JacobsenSynne NygaardAlfred SkariAnette kjuusPer K. FørrisdalØystein RogstadSkule Notø

Page 2: Gruppe 9 - Design Pattern modeling

Design Patterns

En metode for å presentere kunnskapen til erfarne programutviklere på en lesbar og forståelig form.Beskrives ofte med DPML (Design Pattern Modelling Language), et visuelt språk for modellering av design pattern løsninger.

Page 3: Gruppe 9 - Design Pattern modeling

Memento - Eks. 1: Mikseutstyr

Det kan finnes utallige innstillinger for mikseutstyr for lyd. En tekniker kan ta et fotografi av en bestemt innstilling og bruke dette til å gjennopprette panelinnstillingene til en tidligere tilstand.

Et Memento fanger og manifesterer et objekts indre tilstand slik at objektet kan gjenopprettes til den tilstanden senere.

Page 4: Gruppe 9 - Design Pattern modeling

Participant Correspondence:

Mikseutstyret tilsvarer det opprinnelige objektet, hvis tilstand lagres. Fotografiet er memento’et.Personen som tar bildet er ”originator”.Memento’et brukes av ”originator” for å gjenopprette tilstanden til miksepanelet.”Skuffen” som memento’et ligger i kalles ”caretaker”

Page 5: Gruppe 9 - Design Pattern modeling

Konsekvenser:Fotografiet eliminerer behovet for at alle i lydstudioet skal kunne panelinnstillingene i tilfelle de blir forandret.

Fotografiet lagrer også informasjon som teknikeren skal ta seg av som han ikke har i hukommelsen.

Page 6: Gruppe 9 - Design Pattern modeling

Memento - Eks. 2: BilradioDe fleste er opptatt av den radiostasjonen de pleier å høre på i bilen. Når det er mer enn én fører er det sannsynlig at kanaler skiftes med føreren. Presetknappene tjener som memento’er som gjør at radioen kan gjenopprettes til en ønsket innstilling med ett tastetrykk.

Et Memento fanger og manifesterer et objekts indre tilstand slik at objektet kan gjenopprettes til den tilstanden senere.

Page 7: Gruppe 9 - Design Pattern modeling

Participant Correspondence:

Radioinnstillingen tilsvarer det opprinnelige objektet, hvis tilstand lagres. Presetknappen er memento’et.Føreren som stiller inn presetknappen er ”originator”. Han vil også bruke memento’et til å gjenopprette denne radioinnstillingen.Radioen med presetknappen er ”caretaker”.

Page 8: Gruppe 9 - Design Pattern modeling

Konsekvenser:Knappen eliminerer behovet for at føreren skal måtte huske radiofrekvensen til sin favorittkanal.

Presetknappene lagrer informasjon slik at innstillingen kan gjenopprettes.

Page 9: Gruppe 9 - Design Pattern modeling

Observer, Eks.1Når en person gir bud, han eller hun vil vise fram en nummerert plate som vil identifisere hvem man er. Da vil budet forandres og alle ”observers” skal bli informert om forandringen. Dette vil auksjoneren gjøre ved å annonsere det nye budet.

”the Observer” definerer et en til mange forhold. Så når et objekt forandrer tilstand, vil de andre bli informert om dette og vil oppdateres automatisk

Page 10: Gruppe 9 - Design Pattern modeling

Participant Correspondence

Auksjonæren samarbeider med objektet. Han kjenner de som gir bud(”observers”), siden disse må registre seg før auksjonen.Det nåværende budet blir enig med det konkrete subjektet. ”Observers” er mest interresert i tilstanden.De som gir bud blir enig med ”observers”. De trenger å vite når når budet forandres.Hver enkelt av de som gir bud med ulik toleranse for budet samarbeider med ”concrete observer”.

Page 11: Gruppe 9 - Design Pattern modeling

KonsekvenserDet er en abstrakt kobling mellom subjektet og observer. Auksjonæren vil bare vite at at de som skal gi bud skal gi bud. Han veit ikke hvor mye hver vil by…Det er støtte for kringkasting/kommunikasjon. Når auksjonæren annonserer det nåværende bud, vil denne informasjonen bli kringkastet til interesserte parter.Observers kan forårsake skred av uventede ting, siden de kan bli blinde og ikke se konsekvensene av når de forandrer subjektet. F.eks en som byr ekstra mye og dermed starter en budkrig.

Page 12: Gruppe 9 - Design Pattern modeling

Observer - Eks 2: FabrikkForbrukere som registrer seg for å få produktets garanti er som ”observers”. Når sikkerhets tilstanden til et produkt forandres(slik som i en tilbakekalling), blir alle registrerte ”observers” underrettet om situasjonen.

Page 13: Gruppe 9 - Design Pattern modeling

Participant Correspondence

Selskapet samarbeider med objektet. Det kjenner ”observern”, siden de må registrere seg for å få garanti.Produktets sikkerhets/pålitelighet protokoll(safety record) samarbeider med det konkrete subjektet. Observers er mest opptatt av tilstanden.Forbrukeren blir enig med ”observern”. De trenger å vite når deres sikkerhets/pålitelighet protokoll(safety record) for deres nåværende produkt forandres. Hver enkelt forbruker blir enig med det ”the concrete Observers”, siden de vil ha ulike erfaringer med produktet.

Page 14: Gruppe 9 - Design Pattern modeling

KonsekvenserDet er en abstract kobling mellom subjektet og observer. Alt det selskapet veit er at forbrukere har registrert seg for å få garanti. Ikke hvem som vil benytte seg av servicen man kan få ved å ha garanti.Det er støtte for kringkasting/kommunikasjon. Hvis en tilbakekalling vil oppstå, vil et brev bli sendt ut til de registrerte eierne.Observers kan forårsake skred av uventede ting, siden de kan bli blinde og ikke se konsekvensene når de forandrer subjektet.Forbrukere som prøver å bruke garantien er ikke klar over andres erfaringer med produktet. Hvis nok klager er mottat, kan produktet bli kalt tilbake.