Week 6

We zitten al bijna op de helft van mijn stageperiode. Wat gaat de tijd snel voorbij hier!

Deze week ben ik verder gegaan met het oplossen van “probleempjes” in de module om statistieken te tonen. Doordat Jan mijn code aan het nakijken is geweest zijn er toch heel wat dingen naar boven gekomen die efficiënter uitgewerkt kunnen worden. Enkele voorbeelden hiervan zijn: onduidelijke SQL query’s met complexe berekeningen, dubbele code, slechte benamingen van variabelen, …

Het was zeer leerrijk, omdat je dan anders gaat nadenken over hoe je je code duidelijk kan maken voor iemand anders die jou code nog nooit heeft gezien.

Variabelen en lange functies

Hier onder staat een stukje code van hoe de “switch” voor het tonen van de juiste data voor de geselecteerde filter (Webshop, winkel of gecombineerd) er eerst uit zag.

blogpost6_a

Zoals je ziet kan dit al snel heel onduidelijk worden, zeker als je lange query’s gaat schrijven. Dan kom je al snel met vragen zoals: “In welke case zat ik nu? In welke IF of ELSE ben ik nu bezig? Wat betekende die ‘1’ ook al weer?…”. Hier was dus veel ruimte voor verbetering. Door de waardes van variablen aan te passen konden ook de lijnen commentaar verdwijnen. Daarnaast heb ik ook de query’s uit de switch gehaald en in een functie geplaatst. Wat de code veel leesbaarder maakt. Hieronder staat de verbeterde code, conform met de PSR-1 en PSR-2 standaard.

blogpost6_b

Zoals je ziet is deze code veel leesbaarder en is er ook geen commentaar meer nodig om duidelijk te maken wat er precies gebeurd.

Commentaar

Als je ingewikkelde berekeningen toepast in een SQL query is het geen slecht idee om hier enkele lijnen commentaar bij te zetten. Maar om de query nog leesbaarder te maken is het belangrijk dat je hier ook de code mooi opsplitst in aparte lijnen. Hier onder zie je hoe de query er eerst uit zag, en hoe deze er uit ziet na het uitlijnen en opsplitsen.

blogpost6_c blogpost6_d

Zoals je ziet is deze query nu ook een pak leesbaarder geworden.

De moraal van het verhaal, steek dat kleine beetje extra tijd in het volgen van deze standaarden en maak je code op van de eerste keer. Het kost niet veel tijd als je de code direct van de eerste keer mooi uitlijnt en voorziet van commentaar. Dit bespaart je extra werk op het einde.

Donderdag had Jente nog getrakteerd voor zijn verjaardag. Wat had dat ijsje gesmaakt!

Ijsjes op kantoor!

Een foto die is geplaatst door Jente Kasprowski (@jente) op

1 reactie

  • Dennis

    Goed bezig, Bram!

Reactie plaatsen

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *

*