Sinds 2 jaar programmeer ik pas, nu ik de Unity tool gebruik merk ik dat ik toch meer interesse krijg voor programmeren
. De tool bied verschillende talen aan een daarvan is c#, ik doe nu steeds meer kennis op maar ik kom soms nog dingen tegen die mij niet duidelijk zijn en die lastig te vinden zijn op internet.
Eerste vraag, het volgende is mij onduidelijk, c# bied abstract en virtual methods aan.
Abstract zorgt er voor dat je een lege methode kan overriden in een andere classe.
Virtual zorgt ervoor dat je een methode kan overriden in een andere classe.
Nu heb ik tot kort alleen Abstract gebruikt, maar waarom zou ik dat nog gebruiken als Virtual mij meer functionaliteit geeft?
Tweede vraag, is er ook een mogelijkheid dat ik een stuk code in mijn virtual method hergebruik bijvoorbeeld.
Derde vraag, stel dat ik een stuk code waar het belangrijk is dat hij bij een bepaalde conditie direct uit de functie gaat bijvoorbeeld (zie onder), is het dan netter om de "else" weg te laten voor een de if? Volgens mij wordt dit ook failure first genoemd?
Laatste vraag, wat is meest gebruikte volgorde van keywords (abstract, public, protected, override, void, etc) bij sommige talen maakt dit dacht ik wel iets uit?
Eerste vraag, het volgende is mij onduidelijk, c# bied abstract en virtual methods aan.
Abstract zorgt er voor dat je een lege methode kan overriden in een andere classe.
Virtual zorgt ervoor dat je een methode kan overriden in een andere classe.
Nu heb ik tot kort alleen Abstract gebruikt, maar waarom zou ik dat nog gebruiken als Virtual mij meer functionaliteit geeft?
Tweede vraag, is er ook een mogelijkheid dat ik een stuk code in mijn virtual method hergebruik bijvoorbeeld.
code:
1
2
3
4
5
6
7
8
9
10
| virtual void piet() { doe dingen } override void piet() { doe dingen (zonder dit te typen obviously) doe andere dingen } |
Derde vraag, stel dat ik een stuk code waar het belangrijk is dat hij bij een bepaalde conditie direct uit de functie gaat bijvoorbeeld (zie onder), is het dan netter om de "else" weg te laten voor een de if? Volgens mij wordt dit ook failure first genoemd?
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
| protected void StatePiet() { if (piet == false) { StateUpdate = StateJan; return; } else if (peter == true) { StateUpdate = StatePeter; return; } andere code } |
Laatste vraag, wat is meest gebruikte volgorde van keywords (abstract, public, protected, override, void, etc) bij sommige talen maakt dit dacht ik wel iets uit?