Skillnad mellan versioner av "Kap 2 Objektorienterad design"
Taifun (Diskussion | bidrag) m |
Taifun (Diskussion | bidrag) m |
||
Rad 11: | Rad 11: | ||
<br> | <br> | ||
− | |||
= <b><span style="color:#931136">2.1 Modellering med UML</span></b> = | = <b><span style="color:#931136">2.1 Modellering med UML</span></b> = |
Versionen från 26 november 2022 kl. 17.42
<< Agenda | Innehåll & struktur | Genomgång | Dagens övningar | Nästa lektion >> |
2.1 Modellering med UML
UML design och modellering i fyra steg
Steg 1 Förstå problemet: Läs kundens kravspecifikation (rutan ovan) om och om igen!
Steg 2 Identifiera problemets nyckelbegrepp:
- Saker som är relevanta för verksamheten, som man behöver lagra information om.
-
- Vid implementeringen kommer nyckelbegrepp att bli programmets klasser.
Steg 3 Identifiera datamedlemmar till varje klass: Vad består den av? Testa "Har"-relationen!
Steg 4 Identifiera metoder till varje klass: Vad gör den eller vad kan man göra med den?
- Vilka operationer är relevanta, karakteristiska eller typiska för den?
Läs mer om UML design och modellering i fyra steg i kursboken, sid 93-96.
Klassdiagram
Resultat av modellering av projektet Lönespecifikation:
Modellen ovan följer det objektorienterade modelleringsspråket Unified Modeling Language (UML):
Varje klass modelleras i en ruta som innehåller klassens datamedlemmar och metoder.
Minustecknen står framför datamedlemmarna och plustecknen står framför metoderna.
I de högra kolumnerna står datamedlemmarnas datatyper resp. metodernas returtyper.
- Modellen är projektets arkitektur och därför logiskt primär. Koden är sekundär.
- Modellen är oberoende av programmeringsspråket.
- Modellen måste vara objektorienterad för att programmet ska bli det.
- Modellen "planteras", koden växer ur modellen och följer den.
- Därför kallas omvandlingen av modell till kod implementation.
Implementation av modellen
Klassen Time
Klassen Employee
För enkelhetens skull deklareras klassernas datamedlemmar som public.
Därför definieras inte heller någon konstruktor. I en skarp version borde datamedlemmarna vara private.
Array av referenser
Huvudprogrammet EmploTest
Skrivning till fil
Ett körexempel
Copyright © 2022 TechPages AB. All Rights Reserved.