Programming Concepts Flashcards

1
Q

Wat moet elke applicatie in basis hetzelfde kunnen

A
  1. Input ontvangen. Console.ReadLine();
  2. Gegevens opslaan in variabelen, datastructuren of databases.
  3. Data verwerken. int sumVar = numVar1 + numVar2;
  4. Output genereren. Console.WriteLine();
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Waarom C# gebruiken

A

Modern
General - purpose
Object georiënteerd
Eenvoudig om te leren
Gestructureerd
Efficiënt
Platform overstijgend
Onderdeel van .NET framework

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

Welke onderdelen vind je terug in een C# programma?

A

Namespace declaratie.
Class (klasse in het NL) met methoden en attributen.
Main methode.
Statements en expressies.
Commentaar. //

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

Waarmee sluit je een regel af in C#

A

;

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

Wat is belangrijk bij het declareren van variabelen

A

Let op! In C# moet elke declaratie van een variabele voorafgegaan worden door het datatype. Bijvoorbeeld: int number = 4;
*C# is strongly typed.

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

Wat is Type Conversion || Casting

A

In de informatica is een typeconversie een operatie die een stukje data van een bepaald gegevenstype converteert naar een ander gegevenstype.

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

Hoe worden blokken code aangeduid in c#

A

de accolades {} / ook wel braces / curly braces genoemd
In C# krijgen de accolades meestal een hele regel voor zichzelf.
Dit is een afspraak die, behalve leesbaarheid, geen functioneel verschil met zich meebrengt. Bij Java is dit bijvoorbeeld niet zo.
Er zijn dus:

  • de ronde haakjes: () (roundbrackets of parentheses)
  • de rechte haakjes of blokhaken: [] (squarebrackets)
  • de punthaakjes of vishaakjes: <> (angle brackets, chevrons)
  • de accolades: {}: (braces,curly brackets)
    *soms ook gewoon rare haken genoemd.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Wat zijn de afspraken wat naamgeving van variabelen betreft binnen c#

A

Variabelen beginnen met een kleine letter.
Elk ander woord plakt eraan vast, maar heeft een hoofdletter.

Vb.: ditIsEenGoedVoorbeeld  lowerCamelCase

Bij methodes begint elk woord met een hoofdletter, ook het eerste.

Vb.: DoeWatJeMoetDoen()  UpperCamelCase

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

Hoe ziet een volledige if else statement binnen c# uit

A

De volledige structuur van de if else ziet er in C# zo uit:

if (a == b) 
{} 
    else if (a < b) 
{ } 
    else 
{ }


Je hoeft natuurlijk niet alle onderdelen te gebruiken
Je kan nog steeds meerdere else if gebruiken.

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

Wat moet je allemaal definiëren voor een for-loop binnen c#

A

Bij een for-loop definieer je 3 delen:

1. De variabele die in de volgende 2 delen gebruikt wordt en waar
    de loop begint.  int i = 0; 

2. De voorwaarde die een boolean returnt.  i < x; 

3. De stappen.  i++

for (int i = 0; i < x; i++) {}
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Er is een while-loop en een do-while-loop.
Wat is het verschil?

A

do {i=i+1;} while (i < 10);

OF

while (…) {i+=1;}
Het verschil tussen while- en do while-lussen in termen van uitvoering van de lusbody is dat in de do-while-lus de lus precies één keer wordt uitgevoerd, ongeacht of de voorwaarde waar of onwaar is, maar in de while-lus wordt de lus alleen uitgevoerd als de voorwaarde waar is.

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

Wat is een array binnen c#

A

De Array is een vaak gebruikte datastructuur.

Hij bevat elementen van een bepaald datatype.
Je moet wel aangeven hoe lang de array is bij het aanmaken.

Dit kan niet meer veranderd worden.

string[] naam = new string[4]  OF string[] naam = {“Bob”, “Rick”, “Miguel” }
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Wat is een list binnen c#

A

Een List is flexibeler. Hoewel je ook moet aangeven van welk type de elementen zijn, is het aantal variabel.

Er zijn ook verschillende methodes die je kan aanroepen.

List<int> list1 = new List<int>();
list1.Add(waarde)
list1.Remove(waarde)
list1.RemoveAt(positie)</int></int>

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

Wat moet altijd gedefinieerd worden binnen een methode van c#

A

methode in C#.
Voor een methode moet altijd een returntype worden gedefinieerd,
zelfs bij geen returntype.
In dat geval gebruik je als dat returntype “void”.

public void FunctieNaam(){}
 geen output

public void FunctieNaam(int a, string b){}
 geen output

public int FunctieNaam(int a, int b){return c}
 output van type int

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

Defineer OOP

A

Objectgeoriënteerd programmeren (OOP) is een programmeerstijl die wordt gekenmerkt door de identificatie van klassen van objecten die nauw verband houden met de methoden (functies) waarmee ze zijn geassocieerd. Het bevat ook ideeën over overerving van attributen en methoden.

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

Wat is Procedural Oriented Programming

A

Procedural Oriented Programming
Gaat over algoritme
Programma op basis van functies
Minder geheugengebruik
Concept top-down
Geen mogelijkheid tot toegangsregeling
Geen overloading
Minder secure
Data verbergen niet mogelijk

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

Wat is Object Oriented Programming

A

Object Oriented Programming
Gaat over gegevens
Programma op basis van objecten
Meer geheugengebruik
Concept bottom-up
“Mogelijkheden tot toegang
(public, private, enz.)”
Overloading is mogelijk
Hoge mate van security
Data verbergen wel mogelijk

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

Wat is een class

A

Class (klasse)

Bij object georiënteerd programmeren is een class een uitbreidbaar sjabloon (beschrijving) voor het maken van objecten.

Het biedt initiële eigenschappen (attributen/variabelen)
en implementaties van gedrag
(functies of methoden).

Zonder classes kunnen er geen objecten gemaakt worden.
Een class is een blauwdruk voor objecten.
In een class staan variabelen en methoden, maar die kregen nog geen waarde toegekend.

LET OP! Uit de class kan je niet drinken, uit het object wel!
public class Kop
{
private string kleur;
private Schotel schotel;
private bool opdruk;
private bool oor;
private string inhoud;
private int hoeveelheid;

    // Constructor
    public Kop(string _kleur, bool _opdruk, 
		bool _oor, int _hoeveelheid)
    {
        kleur = _kleur;
        opdruk = _opdruk;
        oor = _oor;
        hoeveelheid = _hoeveelheid;
    }

    public void Vullen(int _hoeveelheid)
    {
        hoeveelheid = _hoeveelheid;
    }

    public void Legen(int _hoeveelheid)
    {
        hoeveelheid = 0;
    }

    public void Drinken(int _hoeveelheid)
    {
        hoeveelheid -= _hoeveelheid;
    }
}
19
Q

Wat bevat een class allemaal

A

CLASS heeft ATTRIBUTES of PROPERTIES
CLASS heeft METHODS
CLASS heeft CONSTRUCTOR
CLASS heeft vaak RELATIONSHIPS
CLASS heeft een of meerdere STATES

Een class is ook geen object, maar een beschrijving ervan.

20
Q

Wat is een OBJECT

A

Een OBJECT is dus een instantie van een class.

21
Q

Wat is een constructor binnen C#

A

De constructor heeft ALTIJD dezelfde naam als de class.
Het keyword public geeft alweer aan dat deze methode vanuit elke ander
stuk code toegankelijk moet zijn. Je hoeft geen returntype aan te geven.
(Let op, dit is zowat de ENIGE methode waarbij dat niet hoeft.)
Je kan een aantal parameters aan de constructor meegeven die dan bij
de aanroep moet ingevuld worden met argumenten.
Voorbeeld:
public Werknemer (int _leeftijd, string _voornaam, string _naam)
{
leeftijd = _leeftijd;
voornaam = _voornaam;
naam = _naam;
}

22
Q

Wat is een Scope

A

Het is belangrijk om je project goed af te bakenen.
We spreken dan van een “scope”.
Wat ga je wel en wat ga je niet meenemen in de uitwerking?

23
Q

Wat is UML

A

Unified Modeling Language(voor diagrammen)

24
Q

Wat moet er allemaal in een usecase beschrijving

A

Usecase
Beschrijving
Actor
Triggers
Pre-conditions
Post-conditions
stappen
Main success scenario
alternatieve scenarios

25
Q

Wat is er belangrijk tijdens het maken van een class

A

Naam van klasse altijd enkelvoud
vervolgens de eigenschappen en attributen
onderaan de methoden

26
Q

Wat is associatie

A

Relatie met andere class waarin de rol ook beschreven staat

27
Q

Wat is Multipliciteit

A

Mulitpliciteit geeft aan hoeveel objecten er zijn in de associatie.
Het aantal kan zijn:

exact één: aangegeven met 1
nul of éé: aangegeven met 0..1
nul of meer: aangegeven met 0..* of alleen de asterisk *
één of meer: aangegeven met 1..*
een exact aantal: aangegeven met het getal, bijvoorbeeld: 6
een rij: bijvoorbeeld: 1,3,5,7,9 (de oneven getallen onder de tien)
Onderstaand figuur geeft een voorbeeld van multipliciteit en rol van een associatie.

28
Q

Wat is aggregatie

A

Een aggregatie is een extra aanduiding om aan te geven dat de ene klasse een geheel is en dat de andere klassen delen daar van zijn. Het is slechts een aanduiding en verandert verder niets aan de normale bedoeling van een associatie.
Aggregatie wordt slechts gebruikt voor het aangeven wat het geheel is en wat de delen zijn. Dit heet in het engels: whole/part relationship.

Dit geeft een “heeft-een” relatie aan. Het geheel heeft-een deel van iets anders, en nog iets anders en nog iets anders…

De aggregatie wordt in een figuur aangegeven met een open ruit aan de kant van het gehele deel. Zie figuur hieronder.

29
Q

Wat is inheritance/overerving

A

Overerving is een term die gebruikt wordt bij de methodiek van het object-georiënteerd programmeren. Het betekent dat een klasse variabelen en - afhankelijk van de definitie van de programmeertaal voor methodes - functies en procedures erft van een superklasse.

30
Q

Wat is Generalisatie

A

Generalisatie definieert als de techniek van het extraheren van de essentiële kenmerken (deze omvatten attributen, eigenschappen en methoden) van twee of meer subklassen en deze vervolgens combineren in een gegeneraliseerde basisklasse (ook wel een superklasse genoemd).

31
Q

Wat is polymorphisme

A

Polymorfisme staat voor veelvormigheid. In de informatica is polymorfisme een eigenschap die een programmeertaal in mindere of meerdere mate kan bezitten. Polymorf programmeren is de mogelijkheid een algoritme uit te drukken zonder dat de programmeur aandacht moet besteden aan alle verschillende gegevenstypes.

(cleanere conditionele statements denk aan if else en switch)

32
Q

wat is Encapsulation

A

Encapsulation betekent zoveel als inkapseling. In OO is elk object afgeschermd. Objecten kunnen elkaar niet ‘zien’. Ze kunnen wel allerlei dingen uitwisselen, alsof ze via een luikje met elkaar in verbinding staan.
koffie protocol, een voorbeeld van encapsulation In het ‘kopje koffie’ zijn klant, ober en keuken afgeschermde objecten. Klant en keuken kennen elkaar niet. De ober is de intermediair tussen die twee. In een Object-georiënteerde wereld kunnen objecten elkaar niet zien. Ze kunnen wel ‘door een luikje’ communiceren, koffie en geld uitwisselen.

Encapsulation houdt computer systemen flexibel. Het bedrijfsproces kan makkelijk veranderen. Hoe de koffie gezet wordt is voor de klant niet interessant en voor de ober ook niet. De keuken kan rustig verbouwd worden, als het ‘luikje’ maar hetzelfde blijft. Het gehele bedrijfsproces kan zelfs makkelijk veranderen. Indien de ober zelf koffie gaat zetten zal de klant er niets van merken.

Encapsulation stelt OO-experts in staat om flexibele systemen te bouwen die mee kunnen blijven groeien met uw bedrijfssituatie. Elke systeemmodule kan apart veranderd worden, zonder impact op de andere.

33
Q

Sequence diagram richtlijnen

A
  1. Detailniveau
  2. Belangrijkste elementen
  3. Alternatieve scenarios
  4. Deelscenarios
  5. Contour
  6. Detail interactie
  7. Consistentie
34
Q

Wat is een Sequence diagram

A

Een sequentiediagram is een soort interactiediagram omdat het beschrijft hoe en in welke volgorde een groep objecten samenwerkt. Deze diagrammen worden gebruikt door softwareontwikkelaars en zakelijke professionals om de vereisten voor een nieuw systeem te begrijpen of om een bestaand proces te documenteren.

35
Q

Foreach()
 Itereren, wie het niet kan, kan het leren… leg uit

A

De foreach-instructie biedt een eenvoudige, schone manier om de elementen van een matrix te herhalen. Met multidimensionale matrices geeft het gebruik van een geneste voor-lus u echter meer controle over de volgorde waarin de matrixelementen moeten worden verwerkt.

36
Q

Wat is een DAL

A

DATA ACCESS LAYER

We maken een aparte laag tussen onze applicatie en de database in.

Je kan deze zien als de TOLK tussen in ons geval C#(app) en SQL (db).

We voorzien de connectionstring, de lijst die we terug willen krijgen uit de database
en alvast een lege constructor.

37
Q

Wat betekent DQL

A

Data Query Language

Ophalen van gegevens uit de database

SELECT kolommen die je wilt zien gescheiden door “,”
FROM relaties waar gegevens in staan
WHERE filteren van records
ORDER BY sorteringswijze
SELECT naam, adres, woonplaats
FROM KLANT
WHERE woonplaats = ‘Amsterdam’
AND code = 1
ORDER BY naam

38
Q

wat betekent DML

A

Data Modification Language

Manipuleren van gegevens uit de database

39
Q

wat betekent DML

A

UPDATE <TABELNAAM>
SET <veld1>=<waarde1>,<veld2>=<waarde2>, …
WHERE <voorwaarde(n)></waarde2></veld2></waarde1></veld1></TABELNAAM>

UPDATE COMPUTER
SET mem = 4096,
hdd2 = 350,
os = ‘Windows 7’
WHERE UPPER(naam) = ‘THUISPC’

DELETE FROM PRINTER
WHERE UPPER(naam) = ‘HUISPRINTR’

40
Q

Wat betekent DDL

A

Data Definition Language

Manipuleren van structuur van de database

CREATE TABLE …

UPDATE VIEW …

41
Q

Wat betekent DCL

A

Data Control Language

Manipuleren van rechten van de database

GRANT …

DENY …

REVOKE …

42
Q

Soorten testen?

A

☑ Unittest
☑ Integratietest
☑ Systeemtest
☑ Regressietest
☑ Acceptatietest

43
Q

Hoe maak je een variabel zichtbaar maar niet aanpasbaar

A

public int MyProperty { get; private set; }

44
Q

Hoe ziet een while loop uit in c#

A

int i = 0;
while (i < 5)
{
Console.WriteLine(i);
i++;
}