Övningar 21 (C/Cpp 23)

Från Mathonline
Hoppa till: navigering, sök
        <<  Agenda          Genomgång 21          Övningar 21          Innehåll & struktur          Nästa lektion  >>      


Dagens övningar

  •     Mata in programmet All in main, kompilera och kör.
  •     Mata in koden i headerfilen Procedure.h och kompilera.
  •     Mata in programmet Procedure, kompilera och kör.
  •     Mata in klassen Circle och kompilera.
  •     Mata in programmet CircleTest, kompilera och kör.
  •     Lös övningarna nedan (ur kursboken, övningar, sid 267):

Ovn 8 1 2.jpg


Frågor till OOP

Besvara nedanstående frågor. Svar till alla frågor kan du hitta i texten:

Vad är objektorienterad programmering?.

Skriv gärna dina svar i ett textdokument.

Ingen inlämning krävs. Arbeta gärna gruppvis.


1)   Vad menas med paradigmskifte i programmeringens historia?

2)   Vad var anledningen till paradigmskiftet inom programutveckling?

3)   Mellan vilka två programmeringsspråk går historiskt skiljelinjen mellan procedural och

objektorienterad programmering? När ungefär inträffade övergången?

4)   Vilka för- och nackdelar har enligt din åsikt den procedurala synen på programmering?

5)   Vilka för- och nackdelar har enligt din åsikt den objektorienterade synen på programmering?

6)   Är det korrekt att pepparkakor är klasser och pepparkaksformen objekt?

7)   Kan man via abstraktion komma från objekt till klass eller är det tvärtom?

8)   Om pennor är objekt var kan man hitta klassen penna?

9)   Av vilka två huvudingredienser består en klass i regel?

10)   Anta att Tal är en klass. Är addition() en metod eller en datamedlem i klassen Tal?

11)   Anta att Bil är en klass. Är Motor en metod eller en datamedlem i klassen Bil?

12)   Vad är skillnaden mellan funktioner och metoder i C++?

13)   Är + en metod, en datamedlem eller en operator i klassen String? Vad heter den?

14)   Med vilken fråga hittar man datamedlemmarna i en klass?

15)   Med vilken fråga hittar man metoderna i en klass?

16)   Är objekt och instans synonymer?

17)   Vad betyder punktnotation?

18)   Vad betyder allokering i datasammanhang?

19)   Vilka är de tre hörnstenarna inom objektorienterad programmering?

20)   Pekar i ett klassdiagram pilen från subklassen till superklassen eller tvärtom?

21)   När en subklass ärver en superklass, vilka delar av superklassen ärver den?

22)   Varför är polymorfism en speciell form av överlagring av metoder?

23)   Vad skiljer polymorfism från vanlig överlagring av metoder?

24)   Kan polymorfa metoder förekomma i en och samma klass?

25)   Kan överlagrade metoder förekomma i en och samma klass?

26)   Kan man komma åt de privata datamedlemmarna i en superklass från en subklass?


Projektuppgifter

När du blir klar med repetitionen ovan kan du arbeta med kursens:

\( \qquad\qquad\qquad\quad \)\( \qquad\;\;\, \)



Extra uppgifter

För alla som önskar ha mer att koda (frivillgt):
\( \qquad\;\;\, \)\( \qquad\;\;\, \)








Copyright © 2023. All Rights Reserved.