Native CSD-I Hoofdstuk 9 OOP in C#

OOP in C#
CSD-I
Hoofdstuk 9
1 / 41
suivant
Slide 1: Diapositive
Applicatie- en mediaontwikkelaarMBOStudiejaar 1

Cette leçon contient 41 diapositives, avec quiz interactifs et diapositives de texte.

time-iconLa durée de la leçon est: 60 min

Éléments de cette leçon

OOP in C#
CSD-I
Hoofdstuk 9

Slide 1 - Diapositive

Cet élément n'a pas d'instructions

Deze lessen
  • Kennis ophalen
  • Classes: zelf maken

Slide 2 - Diapositive

Cet élément n'a pas d'instructions

Bekijk het programma en beantwoord:
1. Op r1 is 'var' gebruikt, waarom kan dat?
2. Is var een datatype?

3. Wat doet r24?

4. Wat is de scope van de foreach op r13?

5. Je ziet één attractie aan de lijst worden toegevoegd. Wordt voor deze attractie de if-statement waar?
Algemeen:
6. Hoe open je een bestaand project in Visual studio?

7. C# is een 'gecompileerde taal', wat betekent dat?

8. Welke datatype gebruik je voor kommagetallen?

9. Waarvoor gebruik je <tabs> in een C#-programma?
Klik en zoom

Slide 3 - Diapositive

Vragen laten beantwoorden in textdocumentje en daarna "cold call" vragen in de klas.
Declareren
Definiëren
Scope
Opmaaktaal
IDE
Visual Studio
{ ... }
int counter = 0;
int counter;
XAML

Slide 4 - Question de remorquage

Cet élément n'a pas d'instructions

1. Definieer een variabele waarin je het aantal studenten van de opleiding kunt opslaan; dit zijn 423 studenten.

2. Declareer een variabele voor het kenteken van een auto.

Slide 5 - Question ouverte

Cet élément n'a pas d'instructions

&&
+
*
||
!=
<=
-
>
/

Slide 6 - Question de remorquage

Cet élément n'a pas d'instructions

Opdracht - samen of zelfstandig
De winkelketen Kubus.Com gaat strooien met kortingen in de komende vier dagen. De CEO van het bedrijf mevrouw Gill Bates kwam op het idee om de klanten korting te geven op basis van de hoogte van de aankoop. Hoe duurder het product hoe hoger het kortingspercentage. Maak een applicatie genaamd KortingsBerekening die laat zien wat een product kost.

  • Als de app start kun je het bedrag intypen dat de klant eigenlijk zou moeten betalen (zonder korting dus).
  • Daarna wordt het kortingspercentage bepaald:
  •       Producten tot 10 euro krijgen 5% korting.
  •       Producten tot 40 euro krijgen 12,50% korting.
  •       Producten tot 100 euro krijgen 15% korting.
  •       Producten vanaf 100 euro krijgen 21,5% procent korting.
  • Tenslotte toont app:
  •        Het te betalen bedrag (minus de korting)
  •        Het kortingsbedrag

Slide 7 - Diapositive

Samen opbouwen of zelfstandig laten doen?

Slide 8 - Diapositive

Cet élément n'a pas d'instructions

Slide 9 - Diapositive

Cet élément n'a pas d'instructions

Waarom klassen / classes?
  • Een class is een soort datatype dat we zelf maken.

  • Maken van lijsten met items van ons eigen datatype.

  • We gebruiken (lijsten van) classes om complexe structuren te beschrijven.

Slide 10 - Diapositive

Cet élément n'a pas d'instructions

Een class beschrijft altijd een 'ding'
Bijvoorbeeld: een auto, gebruiker, attractie, student, etcetera.

  • Zo'n ding heeft eigenschappen.
  • Een class heeft dus óók eigenschappen.

Slide 11 - Diapositive

Cet élément n'a pas d'instructions

Een class beschrijft altijd een 'ding'
Bijvoorbeeld: een auto, gebruiker, attractie, student, etcetera.

  • Zo'n ding heeft eigenschappen.
  • Een klasse heeft dus óók eigenschappen.

Slide 12 - Diapositive

Cet élément n'a pas d'instructions

Een class beschrijft altijd een 'ding'
Bijvoorbeeld: een auto, gebruiker, attractie, student, etcetera.

  • Zo'n ding heeft eigenschappen.
  • Een klasse heeft dus óók eigenschappen.

Slide 13 - Diapositive

Cet élément n'a pas d'instructions

Een class beschrijft altijd een 'ding'
Bijvoorbeeld: een auto, gebruiker, attractie, student, etcetera.

  • Zo'n ding heeft eigenschappen.
  • Een klasse heeft dus óók eigenschappen.

Slide 14 - Diapositive

Cet élément n'a pas d'instructions

Een class is nog geen ding
  • Een class beschrijft eigenschappen van ons 'datatype'

Slide 15 - Diapositive

Cet élément n'a pas d'instructions

Een class is nog geen ding
  • Een class beschrijft eigenschappen van ons 'datatype'
  • Pas als je het          keyword gebruikt, ga je van 'beschrijving' naar 'echt ding'.

Slide 16 - Diapositive

Cet élément n'a pas d'instructions

Een class is nog geen ding
  • Een class beschrijft eigenschappen van ons 'datatype'
  • Pas als je het          keyword gebruikt, ga je van 'beschrijving' naar 'echt ding'.
  • Een echt object maken op basis van een class heet instantiëren.

Slide 17 - Diapositive

Cet élément n'a pas d'instructions

Slide 18 - Diapositive

Cet élément n'a pas d'instructions

Slide 19 - Diapositive

Cet élément n'a pas d'instructions

Slide 20 - Diapositive

Cet élément n'a pas d'instructions

Slide 21 - Diapositive

Cet élément n'a pas d'instructions

Slide 22 - Diapositive

Cet élément n'a pas d'instructions

Een class heeft eigenschappen
  • Bij het instantiëren van een object, vul je de eigenschappen van dat ene 'ding' in.
  • Dat kan alleen als die eigenschappen in de class ('blauwdruk') zijn beschreven.
  • Eigenschappen van een class beschrijven de eigenschappen die een 'ding' in het echt heeft.

Slide 23 - Diapositive

Cet élément n'a pas d'instructions

Een class heeft eigenschappen
  • Bij het instantiëren van een object, vul je de eigenschappen van dat ene 'ding' in.
  • Dat kan alleen als die eigenschappen in de class ('blauwdruk') zijn beschreven.
  • Eigenschappen van een class beschrijven de eigenschappen die een 'ding' in het echt heeft. 
Bijvoorbeeld: class Computer met eigenschappen Merk, Type, Schermgrootte, CPU, etc..

Slide 24 - Diapositive

Cet élément n'a pas d'instructions

Slide 25 - Diapositive

Cet élément n'a pas d'instructions

Slide 26 - Diapositive

Cet élément n'a pas d'instructions

Access modifier ('toegang aanpasser')
  • Dit beperkt vanuit waar een eigenschap bereikt kan worden.
  • Gebruik voor nu altijd public bij eigenschappen.
  • Met 'public' is de eigenschap vanuit hele project in te stellen/aanpassen.
  • In Blok C ook nog: private, protected en internal.

Slide 27 - Diapositive

Cet élément n'a pas d'instructions

Datatype
Net als bij een variabele geef je ook hier het datatype aan.

Slide 28 - Diapositive

Cet élément n'a pas d'instructions

Naam van de eigenschap
  • UpperCamelCase
  • Beschrijft eigenschap/attribuut van de class
  • Booleans beginnen met “Is”. Bijvoorbeeld: IsAvailable, IsAlive
  • Andere voorbeelden: Name, Age, Title, Text

Slide 29 - Diapositive

Cet élément n'a pas d'instructions

Getters en setters
  • Deze eigenschap kan worden opgevraagd én ingesteld.
  • Gebruik voor nu altijd zowel get en set: { get; set; }
  • In de toekomst ga je eigenschappen zien die alleen gelezen kunnen worden (read-only).

Slide 30 - Diapositive

Cet élément n'a pas d'instructions

Slide 31 - Diapositive

Cet élément n'a pas d'instructions

Slide 32 - Diapositive

Cet élément n'a pas d'instructions

Classes

Slide 33 - Carte mentale

Cet élément n'a pas d'instructions



Een class is een...
A
Variabele
B
Item in een lijst
C
Soort datatype
D
Object

Slide 34 - Quiz

Cet élément n'a pas d'instructions

Plek waar de klasse staat. Hierdoor kunnen verschillende ontwikkelaars dezelfde klassenamen gebruiken.
Beschrijft een attribuut van een klasse.
Het concreet maken van een klasse.
Geven aan of de eigenschap gelezen of ingesteld kan worden.
Concreet voorbeeld van klasse; instantie.
Bepaalt de toegankelijkheid.
Beschrijft een ding.
Class
Object
Namespace
Eigenschap
Access modifier
Getters en setters
Instantiëren

Slide 35 - Question de remorquage

Cet élément n'a pas d'instructions

Klik-en-zoom:

De klassenaam wordt bepaald op regel...
(vul alleen een getal in)

Slide 36 - Question ouverte

Cet élément n'a pas d'instructions

Op regel nummer ……………… wordt een
object geïnstantieerd.

(vul alleen een getal in)

Slide 37 - Question ouverte

Cet élément n'a pas d'instructions

Er wordt een eigenschap gedeclareerd
op regel nummer ………………

(vul alleen een getal in)

Slide 38 - Question ouverte

Cet élément n'a pas d'instructions

Op regel nummer ……………… wordt een
eigenschap gevuld met een waarde.

(vul alleen een getal in)

Slide 39 - Question ouverte

Cet élément n'a pas d'instructions

Slide 40 - Diapositive

Cet élément n'a pas d'instructions


Aan de slag


Opdracht 9.1
Don't eat yellow snow


Aan de slag

ItsLearning/Opdrachten/Hoofdstuk 9

Opdracht 9.1 - Don't eat yellow snow


Slide 41 - Diapositive

Cet élément n'a pas d'instructions