140 likes | 218 Views
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.
E N D
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. • Beskrives ofte med DPML (Design Pattern Modelling Language), et visuelt språk for modellering av design pattern løsninger.
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.
ParticipantCorrespondence: • 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”
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.
Memento - Eks. 2: Bilradio • De 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.
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”.
Konsekvenser: • Knappen eliminerer behovet for at føreren skal måtte huske radiofrekvensen til sin favorittkanal. • Presetknappene lagrer informasjon slik at innstillingen kan gjenopprettes.
Observer, Eks.1 • Nå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
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”.
Konsekvenser • Det 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.
Observer - Eks 2: Fabrikk • Forbrukere 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.
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.
Konsekvenser • Det 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.