Skillnad mellan versioner av "Objektorienterad modellering och implementation"
Taifun (Diskussion | bidrag) m |
Taifun (Diskussion | bidrag) m |
||
(7 mellanliggande versioner av samma användare visas inte) | |||
Rad 11: | Rad 11: | ||
= <b><span style="color:#931136">Projekt Lönespecifikation</span></b> = | = <b><span style="color:#931136">Projekt Lönespecifikation</span></b> = | ||
<div class="ovnE"> | <div class="ovnE"> | ||
− | ==== <b><span style="color:#931136"> | + | ==== <b><span style="color:#931136">Definition av program ur ett objektorienterat perspektiv:</span></b> ==== |
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: Proj_Lonespecifikation.jpg]]</div> | <div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: Proj_Lonespecifikation.jpg]]</div> | ||
Rad 61: | Rad 61: | ||
Modellen är projektets <b><span style="color:red">arkitektur</span></b> och därför logiskt primär. | Modellen är projektets <b><span style="color:red">arkitektur</span></b> och därför logiskt primär. | ||
− | Modellen är | + | Modellen är <b><span style="color:red">oberoende</span></b> av programmeringsspråket. |
Modellen måste vara objektorienterad för att programmet ska bli objektorienterat. | Modellen måste vara objektorienterad för att programmet ska bli objektorienterat. | ||
Rad 101: | Rad 101: | ||
</div> | </div> | ||
− | + | <!-- | |
− | = <b><span style="color:#931136">Läs om Objektorienterad modellering och implementation på sid | + | = <b><span style="color:#931136">Läs om Objektorienterad modellering och implementation i [http://www.mathonline.se/Progr_2/Boken%20Progr_2_Cs.pdf <span style="color:blue">kursboken</span>] på sid 203-210 = |
− | + | --> | |
Rad 128: | Rad 128: | ||
− | [[Matte:Copyrights|Copyright]] © | + | [[Matte:Copyrights|Copyright]] © 2022 [https://www.techpages.se <span style="color:blue">TechPages AB</span>]. All Rights Reserved. |
Nuvarande version från 23 februari 2022 kl. 10.36
Lektion 21 | Genomgång | Övningar |
Projekt Lönespecifikation
Objektorienterad 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 modellering i fyra steg i kursboken, sid 117-119.
Klassdiagram
Resultat av modelleringen:
Följer regler enligt 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.
Modellen är oberoende av programmeringsspråket.
Modellen måste vara objektorienterad för att programmet ska bli objektorienterat.
Omvandlingen av modell till kod kallas implementation.
Modellen "planteras", koden växer ur den.
Implementation av modellen
Klassen Time
Klassen Emplo
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.
Programmet EmploTest
Ett körexempel
Copyright © 2022 TechPages AB. All Rights Reserved.