Scrutinizer: maak komaf met slordige code

Slordige code schrijven, het gebeurt sneller dan je denkt. Toch zou dit ten alle kost vermeden moeten worden, aangezien het aanpassingen aan een (web)project en bijhorende support zeer moeilijk maakt. Daarom maken we bij Innomedio gebruik van Scrutinizer: een tool die onduidelijkheden en fouten in code nakijkt. Onze backend webdeveloper Jannick geeft graag meer uitleg.

Slordige code: onvermijdbaar of toch niet?

Slordige code is snel geschreven en dat weet elke ontwikkelaar. Dit gebeurt zelfs zonder dat je het zelf merkt. Je start een project vol goede moed om een duidelijke code te schrijven, maar door onvoorziene omstandigheden moet je sommige zaken uitbreiden. Hierdoor kan een code al snel rommelig worden met als gevolg dat je na 6 maanden niet meer zeker weet wat de door jou geschreven code doet. Je zal hierdoor geen tot weinig aanpassingen durven doorvoeren omdat je schrik hebt om andere functies kapot te maken.

Of een ander scenario: je moet werken aan een rommelige code van een (ex)collega. Dan duurt het een hele tijd voordat je begrijpt wat elk stukje code doet voordat je effectief aanpassingen kan doen. Een fout zoeken in een code is niet zo eenvoudig wanneer je met slordige code moet werken.

(lees verder onder de afbeelding)

Scrutinizer to the rescue

Om bovenstaande scenario’s te vermijden bestaan er een aantal regels en best practices, maar zelfs dan is een heldere code schrijven nog geen evidentie. Om ervoor te zorgen dat deze regels gevolgd worden maken we bij Innomedio gebruik van de tool Scrutinizer.

Scrutinizer is een tool die de door ons geschreven code inspecteert en een score op 10 geeft. Zo krijgen we een idee of onze code wel duidelijk en correct is geschreven.

Hoe doet Scrutinizer dat juist?

Naast een score geven, zal Scrutinizer aangeven op welke locaties er code staat die je best aanpast en zal het alle klassen in je project een score geven tussen A (goed) en F (kritiek). Hierdoor krijg je een duidelijk overzicht welke klasse in je code je moet herschrijven om deze eenvoudiger en duidelijker te maken.

Onderstaande zaken zijn maar een paar eigenschappen van de code die Scrutinizer controleert:

  • Vermijd het gebruik van “else”
  • Klassen zijn niet te groot.
  • Twee instance-operators per regel
  • Enz.

Het volgen van deze regels zorgt ervoor dat code veel leesbaarder is. Bij het onderhouden van een grote webapplicatie maakt leesbare code je leven veel aangenamer.

Code lezen als een boek

“Goede” code moet je kunnen lezen als een boek. Er zijn ontwikkelaars die gebruik maken van commentaar in code om voor anderen en zichzelf duidelijk te maken wat bepaalde stukjes code doen. Echter, als je al commentaar moet gebruiken om code duidelijk te maken is het duidelijk dat je jouw code eenvoudiger moet maken en moet opsplitsen.

Dit zijn dus enkele zaken waarnaar de tool Scrutinizer op zoek gaat en een melding van geeft zodat je dit kan aanpassen.

(lees verder onder de afbeelding)

De kracht van Scrutinizer

Scutinizer zal niet enkel onduidelijke code nakijken, maar zal ook op zoek gaan naar foutieve code. Als er op een locatie code staat die foutief is of errors kan geven, zal Scrutinizer dit aangeven. Dit maakt het als ontwikkelaar eenvoudiger om je (web)project volledig bug- en foutvrij te houden en werkende code te schrijven.

De tool zal bovendien niet enkel PHP-code nakijken, maar ook Javascript, CSS en nog veel meer. Dat is de kracht van Scrutinizer: we kunnen er een volledig webproject aan koppelen en de volledige code wordt nagekeken.

Je hoeft daarnaast ook niet te wachten tot de volledige code is geschreven voordat Scrutinizer je code zal controleren. De tool heeft de mogelijkheid om een GIT-omgeving te koppelen zodat er na elke commit een inspectie wordt gedaan en je als ontwikkelaar perfect kan zien waar je de mist bent ingegaan.

Je webproject gekoppeld aan Scrutinizer?

Elk project dat we bij Innomedio maken, koppelen we aan Scrutinizer. Bovendien streven we steeds naar een zo hoog mogelijke score. Dit zorgt ervoor dat zowel ik als ontwikkelaar en mijn collega’s snel en eenvoudig aanpassingen kunnen doen aan een webproject zonder de hele achtergrond te kennen. Dit maakt het aanpassen van de code van een project en bijhorende support een stuk eenvoudiger.


Geschreven door

Jannick Van Gestel

Jannick Van Gestel
Backend Developer
jannick@innomedio.be
+32 3 304 91 55

Meer weten over wat we voor jouw project kunnen betekenen?

Wij maken met plezier vrijblijvend een afspraak om kennis te maken. Zo kunnen we luisteren naar je verhaal en kijken hoe we je van dienst kunnen zijn.

Bedankt voor je bericht

We nemen zo snel mogelijk contact met je op.

Er liep iets iets mis. Probeer Opnieuw. Kijk zeker na of alle verplichte velden zijn ingevuld.