160 likes | 299 Views
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
E N D
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 • 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 • SVG • Trevisning • JDBC • Utskrift • Nettverk • IO, tråder og ”gobbler”-teknologi • Synkronisering og RC-håndtering • J2ME • Graphics, transparens, skalering
Noen mønstrehttp://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.
Bibliotek og struktur • Abstraksjoner gir anledning til å etablere klassebibliotek