Na het zien van deze cast https://www.infoq.com/pre...8-lines-code-refactoring/ zou ik graag meer over dit onderwerp willen leren. Nu kon ik alles vrij goed volgen tot een van de laatste punten. Op een gegeven moment bestaat een zijn sheets uit het volgende:
Ik gok dat de bovenstaande voorbeelden gebaseerd zijn op C#? (maar daar heb ik helaas nog geen ervaring mee).
Het verschil tussen de Deactivate() en Reactivate is dat ze een andere type X ontvangen.
In de bootstrap functie voegen ze aan de class handlers dus lamdba's toe die doormiddel van partial application al een deel van de parameters vullen en vervolgens dus alleen nog maar een X ontvangen.
Helaas gaat de cast verder niet in op hoe die Add functie dan geimplementeerd wordt en beter nodig hoe we vervolgens die lijst met lambda's kunnen toepassen? Hoe zou ik bijvoorbeeld dmv van die handlers class een ReactivateCommand kunnen uitvoeren?
Iemand die mij misschien de juiste zoektermen kan vertellen zodat ik meer over dit onderwerp kan vinden? Of kan uitleggen hoe je dit in de praktijk zou kunnen toepassen?
Ik heb al zitten zoeken op Delegates, Func en Action, maar dat is volgens mij toch net weer even iets anders dan wat er hierboven in het voorbeeld gebeurd.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
| void BootStrap() { handlers.Add(x => Deactivate(() => new ItemRepository(), x)); handlers.Add(x => Reactivate(() => new ItemRepository(), x)); handlers.Add(x => CheckIn(() => new ItemRepository(), new BarService(), x)); } public static void Deactivate( ItemRepository repository, DeactivateCommand c) { var item = repository.GetById(c.id); item.Deactivate(); } public static void Reactivate( ItemRepository repository, ReactivateCommand c) { var item = repository.GetById(c.id); item.Reactivate(); } |
Ik gok dat de bovenstaande voorbeelden gebaseerd zijn op C#? (maar daar heb ik helaas nog geen ervaring mee).
Het verschil tussen de Deactivate() en Reactivate is dat ze een andere type X ontvangen.
In de bootstrap functie voegen ze aan de class handlers dus lamdba's toe die doormiddel van partial application al een deel van de parameters vullen en vervolgens dus alleen nog maar een X ontvangen.
Helaas gaat de cast verder niet in op hoe die Add functie dan geimplementeerd wordt en beter nodig hoe we vervolgens die lijst met lambda's kunnen toepassen? Hoe zou ik bijvoorbeeld dmv van die handlers class een ReactivateCommand kunnen uitvoeren?
Iemand die mij misschien de juiste zoektermen kan vertellen zodat ik meer over dit onderwerp kan vinden? Of kan uitleggen hoe je dit in de praktijk zou kunnen toepassen?
Ik heb al zitten zoeken op Delegates, Func en Action, maar dat is volgens mij toch net weer even iets anders dan wat er hierboven in het voorbeeld gebeurd.
Currently playing: MTG Arena (PC)