Native CSD-I Hoofdstuk 9 OOP in C#

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

This lesson contains 41 slides, with interactive quizzes and text slides.

time-iconLesson duration is: 60 min

Items in this lesson

OOP in C#
CSD-I
Hoofdstuk 9

Slide 1 - Slide

This item has no instructions

Deze lessen
  • Kennis ophalen
  • Classes: zelf maken

Slide 2 - Slide

This item has no 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 - Slide

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 - Drag question

This item has no 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 - Open question

This item has no instructions

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

Slide 6 - Drag question

This item has no 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 - Slide

Samen opbouwen of zelfstandig laten doen?

Slide 8 - Slide

This item has no instructions

Slide 9 - Slide

This item has no 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 - Slide

This item has no 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 - Slide

This item has no 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 - Slide

This item has no 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 - Slide

This item has no 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 - Slide

This item has no instructions

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

Slide 15 - Slide

This item has no 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 - Slide

This item has no 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 - Slide

This item has no instructions

Slide 18 - Slide

This item has no instructions

Slide 19 - Slide

This item has no instructions

Slide 20 - Slide

This item has no instructions

Slide 21 - Slide

This item has no instructions

Slide 22 - Slide

This item has no 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 - Slide

This item has no 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 - Slide

This item has no instructions

Slide 25 - Slide

This item has no instructions

Slide 26 - Slide

This item has no 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 - Slide

This item has no instructions

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

Slide 28 - Slide

This item has no 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 - Slide

This item has no 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 - Slide

This item has no instructions

Slide 31 - Slide

This item has no instructions

Slide 32 - Slide

This item has no instructions

Classes

Slide 33 - Mind map

This item has no instructions



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

Slide 34 - Quiz

This item has no 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 - Drag question

This item has no instructions

Klik-en-zoom:

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

Slide 36 - Open question

This item has no instructions

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

(vul alleen een getal in)

Slide 37 - Open question

This item has no instructions

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

(vul alleen een getal in)

Slide 38 - Open question

This item has no instructions

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

(vul alleen een getal in)

Slide 39 - Open question

This item has no instructions

Slide 40 - Slide

This item has no 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 - Slide

This item has no instructions