Foundational C# Flashcards

1
Q

Wat doet een compiler?

A

Die zet code begrijpelijk voor developers om in instructies die de computer begrijpt.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Wat is de literal suffix van een decimal?

A

‘m’ of ‘M’

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Wat is de literal suffix van een float?

A

‘f’ of ‘F’

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Sorteer van precies naar minder precies: float, double, decimal.

A
  1. decimal: 28-29 digits
  2. double: 15-17 digits
  3. float: 6-9 digits
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Wanneer gebruik je var?

A

Als type duidelijk is vanuit de context.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Wat doet een verbatim string literal?
(@” “)

A

Die laat alle characters staan zonder escapes. Kan worden gebruikt voor paths.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Hoe kun je Unicode characters escapen?

A

Met \u0000

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Hoe cast je van een decimal naar een integer?

A

Dit is een narrowing conversie dus expliciet casten (decimal) 1
Let op: als je wil afronden moet je de Convert.ToInt32(decimal) gebruiken.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Wat zijn .dll files?

A

Code in intermediate language.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Wat doet dotnet build?

A

Het vertaald het project and dependencies naar binaries. Hierin zitten .dll files.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Wat is het verschil tussen een instance en static method?

A

Instance methods maken gebruik van state die ze opslaan als fields. Daarom is het nodig om een object te initializeren. Static methodes hebben geen state en kunnen dus direct aangeroepen worden.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Hoe initializeer je een array van strings met drie onbekende elementen?

A

string[] naamArray = new string[3];

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Hoe initializeer je een array van strings met drie bekende elementen?

A

int[] naamArray = {1, 2, 3};

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Hoe verander je strings naar uppercase of lowercase?

A

Met de .ToUpper() en .ToLower() helper methods

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Hoe verwijder je leading en trailing blank spaces van een string?

A

Met de .Trim() helper method

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Hoe is een for-loop opgebouwd?

A

For (initializer ; completion condition ; iterator)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Welk getal is 01001001?

A

128 64 32 16 8 4 2 1
0 1 0 0 1 0 0 1
Dus: 73.

18
Q

Wat is het verschil tussen signed en unsigned values?

A

Signed values zijn positief en negatief, unsigned alleen positief.

19
Q

Wanneer gebruik je een decimal?

A

Wanneer je precieze berekeningen doet, bijvoorbeeld financiële data.

20
Q

Wanneer gebruik je een float of double?

A

Wanneer precisie niet heel belangrijk is in de berekening (en zodat de memory footprint laag blijft).

21
Q

Wat is de stack?

A

Memory die wordt toegekent aan code die wordt uitgevoerd door de CPU. De gebruikte memory wordt verwijderd na het uitvoeren.

22
Q

Wat is de heap?

A

Memory die wordt gedeeld door meerdere applicaties die uitgevoerd worden op de OS. Hier worden de waarden van reference types opgeslagen.

23
Q

Wat zijn value types?

A

Types waarvan de waardes in de stack (CPU memory, short term) opgeslagen worden. Bijvoorbeeld int, float

24
Q

Wat zijn reference types?

A

Types die opgeslagen worden in de heap. In code zijn de waarden eigenlijk memory adressen die verwijzen naar een locatie op de heap. In C# te herkennen aan het “new” keyword.

25
Q

Wanneer moet je een expliciete cast gebruiken voor een data conversie?

A

Als je een narrowing conversie (minder informatie) gaat doen. Bij een widening conversie hoeft dit niet.

26
Q

Hoe converteer je een string naar een integer?

A

Door de .Parse() helper method te gebruiken. int.Parse(“string”). Een best practice is om .TryParse() te gebruiken en te catchen.

27
Q

Hoe parse je een string naar een decimal?

A

if (decimal.TryParse(value, out result)) {}
else {}

28
Q

Wat doet Array.Clear(array, 0, 2)?

A

Die verwijderd 2 array elements (vervangen met null) vanaf item 0.

29
Q

Wat doet Array.Resize(ref array, length)?

A

Die past de lengte van een array aan tot length door aan het einde items toe te voegen of weg te halen. Om de array te benaderen moet je het ref keyword gebruiken.

30
Q

Hoe reverse je een string?

A

Door eerst de helper method .ToCharArray() te gebruiken en vervolgens de array te reversen. Daarna combineer je het resultaat door een nieuwe string te initialiseren met new string(charArray)

31
Q

Hoe format je een numerieke waardes als currency?

A

Met {variable:C}

32
Q

Hoe formateer je numerieke waardes voor leesbaarheid?

A

Met {variable:Nx} waarbij x = aantal decimalen

33
Q

Hoe formateer je numerieke waardes als percentage?

A

Met {variable:Px} waarbij x = aantal decimalen (door middel van afronden)

34
Q

Hoe zoek je een waarde (char of string) in een string?

A

Door de .IndexOf() helper methode te gebruiken. Bij geen match krijg je ‘-1’.
Als je meerdere opties zoekt, kun je een char array meegeven aan .IndexOfAny()

35
Q

Wat doet string.Substring(x, y)?

A

Die retourneert een string waarbij x = start-index inclusief, en y = eind-index exclusief

36
Q

Wat is functioneel testen?

A

Unit testen, integratie testen, systeemtesten, acceptatie testen

37
Q

Wat is nonfunctional testen?

A

Testen op gebied van security, performance, usability

38
Q

Welke exceptions mag je catchen?

A

Exceptions waar je systeem van kan herstellen.

39
Q

Wat doet het checked keyword?

A

Die gooit een exception als een integral conversion informatie verliest.

40
Q

Wat is de StackTrace?

A

De stapel met calls waar een exception wordt gegooid en vandaan komt. De laatste call staat bovenaan.