Skillnad mellan versioner av "Kap 8 Klasser"

Från Mathonline
Hoppa till: navigering, sök
m
m
Rad 45: Rad 45:
  
 
=== <b><span style="color:#931136">Programmet Procedure</span></b> ===
 
=== <b><span style="color:#931136">Programmet Procedure</span></b> ===
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: Parametrisering.jpg]]</div>
+
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: Procedure_cpp.jpg]]</div>
 
</div>
 
</div>
  
  
 
= <b><span style="color:#931136">Steg 2: modularisering på klassnivå (objektorienterad)</span></b> =
 
= <b><span style="color:#931136">Steg 2: modularisering på klassnivå (objektorienterad)</span></b> =
<div class="ovnC">
+
<div class="ovnE">
 
<big><big>
 
<big><big>
 
Modulariseringens <b>2:a steg:</b> Metoden Ok() flyttas till en annan klass = <b>ny datatyp</b>.
 
Modulariseringens <b>2:a steg:</b> Metoden Ok() flyttas till en annan klass = <b>ny datatyp</b>.

Versionen från 22 oktober 2023 kl. 13.50

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):
\( \qquad\;\;\, \)\( \qquad\;\;\, \)


8.2   Vägen till OOP

Programmet All_in_main() utan modularisering

All in main.jpg


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:

Procedure.jpg


Parametrisering

Parametrisering.jpg


Programmet Procedure

Procedure cpp.jpg


Steg 2: modularisering på klassnivå (objektorienterad)

Modulariseringens 2:a steg: Metoden Ok() flyttas till en annan klass = ny datatyp.

I Main() skapas ett objekt av den nya datatypen Password och

objektets metod Ok() anropas i Main().

Klassen Password

Password.jpg


Klasserna Password och PasswordUse utgör ETT objektorienterat program.

Klassen PasswordUse

PasswordUse.jpg


Ett körexempel

PasswordUseKorexa.jpg










Copyright © 2023. All Rights Reserved.