Skillnad mellan versioner av "Kap 8 Klasser"
Taifun (Diskussion | bidrag) m |
Taifun (Diskussion | bidrag) m |
||
Rad 13: | Rad 13: | ||
− | = <b><span style="color:#931136"> Lösningsförslag till övning [[ | + | = <b><span style="color:#931136"> Lösningsförslag till övning [[Övningar_20_(C/Cpp_23)|<span style="color:blue">7.7</span>]]</span></b> = |
<div class="ovnC"> | <div class="ovnC"> | ||
=== <span style="color:#931136"> Överskuggning av variabler (Overriding of variables)</span> === | === <span style="color:#931136"> Överskuggning av variabler (Overriding of variables)</span> === |
Versionen från 12 januari 2025 kl. 20.24
<< Agenda | Genomgång 21 | Övningar 21 | Innehåll & struktur | Nästa lektion >> |
Lösningsförslag till övning 7.7
8.1 Vad är objektorienterad programmering?
8.2 Vägen till OOP
Programmet All_in_main() utan modularisering
Programmet är varken proceduralt eller objektorienterat.
Vi ska modularisera programmet på olika nivåer. Det gör i två steg:
Steg 1: modularisering på funktionsnivå (procedural)
Beräkningarna flyttas från main() till separata moduler area() och omkrets() och
lagras externt i en headerfil:
Parametrisering
Programmet Procedure
I den procedurala programmeringen är problemlösning 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.
I den objektorienterade programmeringen är modellering av vekligheten
den styrande synen på hur man strukturerar koden.
Steg 2: modularisering på klassnivå (objektorienterad)
Vår första klass: klassen Circle
Klassen Circle och programmet CircleTest utgör ETT objektorienterat program.
Programmet CircleTest
Körexempel
Klassbegreppet
Gå vidare till: när du är klar med denna genomgång.
Copyright © 2023. All Rights Reserved.