Skillnad mellan versioner av "Objektorienterad modellering och implementation"

Från Mathonline
Hoppa till: navigering, sök
m
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">Utdrag ur kursboken, sid 117:</span></b> ====
+
==== <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 alltid oberoende av programmeringsspråket.
+
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 117-124 =
+
= <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]] © 2021 [https://www.techpages.se <b><span style="color:blue">TechPages AB</span></b>]. All Rights Reserved.
+
[[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

Definition av program ur ett objektorienterat perspektiv:

Proj Lonespecifikation.jpg


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:

Klassdiagram.jpg

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

Time.jpg

Klassen Emplo

Emplo.jpg

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

EmploTest 1.jpg

EmploTest 2.jpg


Ett körexempel

EmploTKorres.jpg



 










Copyright © 2022 TechPages AB. All Rights Reserved.