Posts

Posts uit november, 2012 tonen

C# Waarom kleine methodes beter dan zijn dan grote methodes

Gevoelsmatig zou je kunnen zeggen dat het hebben van vele kleine methodes trager werkt dan het hebben minder methodes die groter zijn. Niets hiervan is waar en dat heeft alles te maken met de manier waarop de .Net runtime werkt. De .Net runtime roept de JIT compiler aan om de IL gegenereerde C# code te compileren naar machine code. De gehele applicatie wordt namelijk niet in één keer gecompileerd naar machine code. Dit omdat dit vertragend werkt en omdat de kans bestaat dat er code is gecompileerd welke nooit zal worden aangeroepen. Om dit te voorkomen roept de CLR de JIT compiler aan op basis van methodes. Dit minimaliseert de opstartkosten en het voorkomt dat de applicatie vastloopt als later meer code moet worden geJIT. De ontwikkelaar kan dus de irrelevante code beperken door grote methodes op te hakken in kleinere methodes. Dit levert dus performancewinst op en bovendien brengen kleine methodes meer voordelen met zich mee: - Single Responsibility Pattern: Voor classes geldt da