Mønstre og tekniske applikasjoner Metodikk og erfaringer i et fagområde
Målgruppe og virkemidler Studenter med grunnlag i OOP og UML enkel programdesign Etablering av metodikk for gui-apps 12 ferdige prosjekter med variert innhold Konkrete eksempler på design patterns Diskusjoner om ”hva er hva” og ”hva er best”
Kilder til mønstre Studiet konsentrer seg om GRASP GoF Kilde Larman:”Applying UML & Patterns” GoF Kilde Gamma m.fl.:”Design Patterns” Enkelte kjente mekanismer og prinsipper som MVC og varianter Layers prinsipp LoD og betraktninger om innkapsling Liskovs substitusjonsprinsipp
Noen tekniske temaer XML JDBC Utskrift Nettverk SVG Trevisning JDBC Utskrift Nettverk IO, tråder og ”gobbler”-teknologi Synkronisering og RC-håndtering J2ME Graphics, transparens, skalering
Noen mønstre http://oo.hive.no/pat/patterns.html Chain-of-Responsibility Command Composite Factory Method Strategy Template Method Information Expert Creator Coupling og Cohesion
Eksempel Etablering av metodikk for gui-apps Etablering av CoR Den første diskusjonen: static Controller Hvilket mønster (f. Eks. Mediator eller Adapter) Nytteverdi av argumenttilførsler langs CoR Abstraksjon, Kohesjon og isolering i gui-lagene
Standard gui Standard gui for desktop er ofte delt inn i fem deler. Enkelte ganger brukes kanskje bare senter-delen
Gradvis abstrahering Standard gui kan gradvis omgjøres til et klassediagram Først lages et mindre konkret domenediagram
Klassediagram Fra gradvis abstrahering kan det lages et mer konkret klassediagram Klassene i dette diagrammet kan nå programmeres
Detaljer og kontroll For å formidle signaler i applikasjonen kan man bruke en kontroller Den kan bygges slik at den kan refereres overalt
Signaler og penetrering Signalveien bygges slik at meldingen penetrer hele applikasjonen Signalet kan terminere hos den siste som vil behandle det.
Isolering av gui-lag
Prinsipp for CoR i gui-metodikk
Etablering av CoR
Abstraksjoner og bibliotek
Bibliotek og struktur Abstraksjoner gir anledning til å etablere klassebibliotek