Objektorientert utforming In 140 Forelesning Nr 13 Sommerville kap 12 – del 2
Samtidige (Concurrent objekter) I prinsippet kan objekter kjøre som parallelle prosesser (tråder) I prinsippet kan objekter eksistere på separate systemer I praksis er standardinnstillingen utførelse i rekkefølge, med metoder som prosedyrekall Java inneholder støtte for tråder. Enkelt å lage parallelle prosesser To vanlige løsninger –Severobjekter, som starter for å betjene et behov. Eksempel: separate systemer, utskriftstjeneste. Hensikt: Unngå venting –Aktive objekter, selvstyrte tilstandsmaskiner. Hensikt: Tidsstyrt operasjon, Enklere programlogikk.
An active transponder object
Eksempel værdatasystem Hensikt: Lage værkart fra forskjellige datakilder –automatiske værstasjoner –værobservatører –ballonger –satelitter Lagdelt arkitektur
Subsystemer i værstasjonsystemet
Use-cases for en automatisk værstasjon
Use-case beskrivelse
Værstasjonens arkitektur
Værstasjonens subsystemer
Sekvensdiagram for datainnsamling
Tilstandsdiagram for værstasjon
Evolusjon av objektorienterte systemer Lett å endre utforming –Attributtrepresentasjon påvirker ikke utformingen –Å endre innmaten i et objekt skal ikke påvirke andre objekter –Lav kobling gjør det lett å introdusere nye objekter –Arv og polymorfisme letter introduksjon av nye objekter –Nye metoder kan introduseres uten å endre metodene som er der fra før.