Skillnad mellan versioner av "4.2 Arv"

Från Mathonline
Hoppa till: navigering, sök
(Skapade sidan med '__NOTOC__ {| border="0" cellspacing="0" cellpadding="0" height="30" width="100%" | style="border-bottom:1px solid #797979" width="5px" |   {{Not selected tab|Lektion 29...')
 
m
Rad 9: Rad 9:
  
  
= <b><span style="color:#931136">Vad är komposition i programmering?</span></b> =
+
= <b><span style="color:#931136">Vad är objektorienterad programmering?</span></b> =
 
<div class="ovnE">
 
<div class="ovnE">
<big>
+
==== <b><span style="color:#931136">Utdrag ur kursboken, sid 66:</span></b> ====
En <b><span style="color:red">bil</span></b> har en <b><span style="color:red">motor</span></b>. Båda är tekniskt komplexa objekt, byggda av experter.
+
  
Man sätter ihop bilen som ett objekt av <b><span style="color:red">klassen Bil</span></b> genom att bygga in i den
+
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: OOP Modell av verkligh.jpg]]</div>
  
en motor som i sin tur är ett objekt av en annan klass, <b><span style="color:red">klassen Motor</span></b>.
 
----
 
<b><span style="color:red">Komposition</span></b> är sammansättning av ett objekt med ett annat objekt (komponent).
 
  
För att kunna sammansätta objekt måste man först sammansätta <b><span style="color:red">klasser</span></b>.
+
==== <b><span style="color:#931136">Utdrag ur kursboken, sid 71:</span></b> ====
  
Komposition betyder sammansättning och är relaterad till <b><span style="color:red">modularisering</span></b>.
+
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: OOP Tre hornstenar.jpg]]</div>
----
+
</div>
Med hjälp av Lego-principen bygger man program med hjälp av redan skrivna
+
  
klasser som kan ingå som komponenter i andra klasser. Vi har:
 
  
# <b><span style="color:red">Komposition av klasser</span></b>
+
= <b><span style="color:#931136">Vad är inkapsling?</span></b> =
# <b><span style="color:red">Komposition av objekt</span></b>
+
<div class="ovnC">
 +
 
 +
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: Inkapslinga.jpg]]</div>
 +
 
 +
<big><b><span style="color:red">Problem:</span></b>
 +
 
 +
Hur ska privata datamedlemmar <b><span style="color:red">initieras</span></b> när de är oåtkomliga?
 +
 
 +
<b><span style="color:red">Lösningen:</span></b>
 +
 
 +
Man använder publika metoder för att via dem komma åt klassens privata datamedlemmar.
 +
 
 +
En av dessa metoder är <b>klassens konstruktor</b>.
 +
 
</big>
 
</big>
 
</div>
 
</div>

Versionen från 25 april 2021 kl. 15.45

       Lektion 29          Genomgång          Övningar      


Vad är objektorienterad programmering?

Utdrag ur kursboken, sid 66:

OOP Modell av verkligh.jpg


Utdrag ur kursboken, sid 71:

OOP Tre hornstenar.jpg


Vad är inkapsling?

Inkapslinga.jpg

Problem:

Hur ska privata datamedlemmar initieras när de är oåtkomliga?

Lösningen:

Man använder publika metoder för att via dem komma åt klassens privata datamedlemmar.

En av dessa metoder är klassens konstruktor.


Klassen Date

Date.jpg


Klassen Employ

Employ.jpg


Programmet Composition

Composition.jpg



Läs om komposition i kursboken på sid 170-173.


 










Copyright © 2021 TechPages AB. All Rights Reserved.