Wk03a+b / H3 / Classes

Classes
CSD-I
H3 / week 3
1 / 49
volgende
Slide 1: Tekstslide
Applicatie- en mediaontwikkelaarMBOStudiejaar 1

In deze les zitten 49 slides, met interactieve quizzen en tekstslides.

time-iconLesduur is: 60 min

Onderdelen in deze les

Classes
CSD-I
H3 / week 3

Slide 1 - Tekstslide

Deze slide heeft geen instructies

Deze les / week
  • Kennis ophalen
  • Weekcheck H2 bespreken ('onderhouds-checker')
  • Classes: zelf maken

Slide 2 - Tekstslide

Deze slide heeft geen instructies

Bekijken 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 - Tekstslide

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 - Sleepvraag

Deze slide heeft geen instructies

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 - Open vraag

Deze slide heeft geen instructies

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

Slide 6 - Sleepvraag

Deze slide heeft geen instructies

Slide 7 - Tekstslide

Deze slide heeft geen instructies

Slide 8 - Tekstslide

Deze slide heeft geen instructies

Slide 9 - Tekstslide

Deze slide heeft geen instructies


Aan de slag


Lezen + maken H3,
paragraaf 3 t/m 5
(bladzijde 48)

Dus: Project 1 + 2
uit H3_Oefeningen_Syntax





Klaar: 
Paragraaf 6 en 7.

Hulp:
Overleg met je buur
Vraag de docent
Stilte, werk voor jezelf
Overleg met buur is ok
Werk in groepjes
timer
10:00

Slide 10 - Tekstslide

Deze slide heeft geen instructies

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 11 - Tekstslide

Samen opbouwen of zelfstandig laten doen?

Slide 12 - Tekstslide

Deze slide heeft geen instructies

Slide 13 - Tekstslide

Deze slide heeft geen instructies

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

  • Maken van lijsten met items van ons eigen datatype.

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

Slide 14 - Tekstslide

Deze slide heeft geen instructies

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

  • Maken van lijsten met items van ons eigen datatype.

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

Slide 15 - Tekstslide

Deze slide heeft geen instructies

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

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

Slide 16 - Tekstslide

Deze slide heeft geen instructies

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

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

Slide 17 - Tekstslide

Deze slide heeft geen instructies

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

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

Slide 18 - Tekstslide

Deze slide heeft geen instructies

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

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

Slide 19 - Tekstslide

Deze slide heeft geen instructies

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

Slide 20 - Tekstslide

Deze slide heeft geen instructies

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

Slide 21 - Tekstslide

Deze slide heeft geen instructies

Een klasse is nog geen ding
  • Een klasse 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 klasse heet instantiëren.

Slide 22 - Tekstslide

Deze slide heeft geen instructies

Slide 23 - Tekstslide

Deze slide heeft geen instructies

Slide 24 - Tekstslide

Deze slide heeft geen instructies

Slide 25 - Tekstslide

Deze slide heeft geen instructies

Slide 26 - Tekstslide

Deze slide heeft geen instructies

Slide 27 - Tekstslide

Deze slide heeft geen instructies

Een klasse 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 klasse ('blauwdruk') zijn beschreven.
  • Eigenschappen van een klasse beschrijven de eigenschappen die een 'ding' in het echt heeft. 

Slide 28 - Tekstslide

Deze slide heeft geen instructies

Een klasse 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 klasse ('blauwdruk') zijn beschreven.
  • Eigenschappen van een klasse beschrijven de eigenschappen die een 'ding' in het echt heeft. 
Bijvoorbeeld: class Computer met eigenschappen Merk, Type, Schermgrootte, CPU, etc..

Slide 29 - Tekstslide

Deze slide heeft geen instructies

Slide 30 - Tekstslide

Deze slide heeft geen instructies

Slide 31 - Tekstslide

Deze slide heeft geen instructies

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 32 - Tekstslide

Deze slide heeft geen instructies

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

Slide 33 - Tekstslide

Deze slide heeft geen instructies

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

Slide 34 - Tekstslide

Deze slide heeft geen instructies

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

Slide 35 - Tekstslide

Deze slide heeft geen instructies

Slide 36 - Tekstslide

Deze slide heeft geen instructies

Slide 37 - Tekstslide

Deze slide heeft geen instructies

Classes

Slide 38 - Woordweb

Deze slide heeft geen instructies



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

Slide 39 - Quizvraag

Deze slide heeft geen instructies

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.
Klasse
Object
Namespace
Eigenschap
Access modifier
Getters en setters
Instantiëren

Slide 40 - Sleepvraag

Deze slide heeft geen instructies

Klik-en-zoom:

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

Slide 41 - Open vraag

Deze slide heeft geen instructies

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

(vul alleen een getal in)

Slide 42 - Open vraag

Deze slide heeft geen instructies

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

(vul alleen een getal in)

Slide 43 - Open vraag

Deze slide heeft geen instructies

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

(vul alleen een getal in)

Slide 44 - Open vraag

Deze slide heeft geen instructies

Slide 45 - Tekstslide

Deze slide heeft geen instructies


Aan de slag


Lezen + maken H3,
paragraaf 6 t/m 7
(bladzijde 52)




Klaar: 
Herhalingsopdracht H3
(gele kader)

Hulp:
Overleg met je buur
Vraag de docent
Stilte, werk voor jezelf
Overleg met buur is ok
Werk in groepjes
timer
10:00

Slide 46 - Tekstslide

Deze slide heeft geen instructies

Evt. herhalingsopdracht H1
(zie boekje)

Slide 47 - Tekstslide

Deze slide heeft geen instructies

Evt. herhalingsopdracht H3
(zie boekje)

Slide 48 - Tekstslide

Deze slide heeft geen instructies


Aan de slag


Weekcheck H3
Stilte, werk voor jezelf
Overleg met buur is ok
Werk in groepjes

Slide 49 - Tekstslide

Deze slide heeft geen instructies