Skillnad mellan versioner av "Kap 8 Klasser"
Taifun (Diskussion | bidrag) m |
Taifun (Diskussion | bidrag) m |
||
Rad 69: | Rad 69: | ||
styrande synen på hur man strukturerar koden. | styrande synen på hur man strukturerar koden. | ||
+ | |||
+ | En nackdel av programmet Procedure ur modelleringssynpunkt är att main():s | ||
+ | |||
+ | lokala variabel radie är separerad från funktionerna area() och omkrets(). | ||
+ | |||
+ | Nackdel, därför att radie är ”ur modelleringssynpunkt” en del av cirkeln. | ||
</big></big> | </big></big> | ||
− | === <b><span style="color:#931136">Klassen | + | === <b><span style="color:#931136">Vår försa klass: Klassen Circle</span></b> === |
− | <div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: | + | <div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: Circle.jpg]]</div> |
<big><big> | <big><big> | ||
− | Klasserna <b><span style="color:#931136"> | + | Klasserna <b><span style="color:#931136">Circle</span></b> och <b><span style="color:#931136">CircleTest</span></b> utgör ETT <b><span style="color:red">objektorienterat</span></b> program. |
</big></big> | </big></big> | ||
− | === <b><span style="color:#931136"> | + | === <b><span style="color:#931136">Programmet CircleTest</span></b> === |
− | <div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: | + | <div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: CircleTest.jpg]]</div> |
=== <b><span style="color:#931136">Ett körexempel</span></b> === | === <b><span style="color:#931136">Ett körexempel</span></b> === | ||
− | <div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: | + | <div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: CircleTestKorex.jpg]]</div> |
</div> | </div> | ||
Versionen från 22 oktober 2023 kl. 14.49
Innehåll
Tis 24 okt, kl 9-12
<< Agenda | Genomgång 21 | Övningar 21 | Planering | Nästa lektion >> |
8.1 Vad är objektorienterad programmering?
- Gå igenom texten (PDF 7 sidor):
8.2 Vägen till OOP
Steg 1: modularisering på funktionsnivå (procedural)
Beräkningarna flyttas från main() till separata moduler area() och omkrets() och
lagras externt i headerfilen Procedure.h:
Parametrisering
Programmet Procedure
Den tredje modulen main() placeras i följande separat fil.
Headerfilen Procedure.h måste inkluderas i den för att koppla ihop modulerna:
I den procedurala programmeringen är problemlösning den styrande synen
på hur man strukturerar koden.
Steg 2: modularisering på klassnivå (objektorienterad)
I den objektorienterade programmeringen är modellering av vekligheten den
styrande synen på hur man strukturerar koden.
En nackdel av programmet Procedure ur modelleringssynpunkt är att main():s
lokala variabel radie är separerad från funktionerna area() och omkrets().
Nackdel, därför att radie är ”ur modelleringssynpunkt” en del av cirkeln.
Vår försa klass: Klassen Circle
Klasserna Circle och CircleTest utgör ETT objektorienterat program.
Programmet CircleTest
Ett körexempel
Copyright © 2023. All Rights Reserved.