Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

PlantUML Macro
object "Counter" as counter1 {
	counter = 1
	end = 3
}
 
object "Counter" as counter2 {
	counter = 2
	end = 3
}
counter1 --> counter2 : count(1)
 
object "Counter" as counter3 {
	counter = 3
	end = 3
}
counter1 --> counter3 : count(2)
counter2 --> counter3 : count(1)
counter2 --> counter3 : count(2)
Vi ser at ett kall til count(2) har samme effekt som to kall til count(1) og at det ikke lenger er lov å kalle count i den siste tilstanden, dsvdvs. når telleren (counter) har nådd slutt-verdien (end). Kall til getCounter er utelatt, siden de (fortsatt) ikke endrer tilstandtilstanden.

For den som bruker et objekt (eller klasse) er det viktig å vite hvordan et objekt oppfører seg, både for å vite om objektet passer til (løser) problemet og hvordan unngå å bruke det feil. For den som skal kode oppførselen i en klasse, er det selvsagt helt vesentlig å tenke gjennom hvilken oppførsel objektene skal ha, og eksempler som den de i figurene er ofte nyttige, både for å tenke gjennom problemet før en koder og for å forklare andre hvordan koden virker (eller er ment å virke). Slike eksempler hjelper en også å skrive tester, som forklart i Oppførsel og enhetstesting.

...