Hoe realiseer je kwalitatief goede code

 – Schrijf code één keer  (‘write code once’)

– Blog 3 – 

Kwalitatief goede software voorkomt hoge kosten voor onderhoud en aanpassingen, performance problemen, downtime, gegevensverlies en imagoschade. Vandaar dat we bij OVSoftware garant staan voor de goede kwaliteit van de softwarecode die we opleveren. Dit doen we onder andere door bij de ontwikkeling van maatwerk softwareoplossingen de tien richtlijnen voor codekwaliteit van de Software Improvement Group (SIG) toe te passen. In een serie van tien blogs leggen onze IT-specialisten uit wat deze richtlijnen zijn, hoe zij developers ondersteunen bij het schrijven van code en welke voordelen ze opleveren voor de klant.

Schrijf code één keer – wat houdt dat in? 

Deze richtlijn gaat over het eenmalig schrijven van code die je vervolgens op meerdere plaatsen kunt hergebruiken. Dat doet je niet door het stukje code keer op keer te kopiëren, maar zodra je een stuk code ergens opnieuw wilt gebruiken, haal je dit specifieke deel uit een eerder geschreven functie en maak je hiervan een nieuwe functie. Een functie is maximaal 15 regels code die ervoor zorgt dat een bepaalde actie wordt uitgevoerd. Vervolgens verwijs je op elk punt waar je deze code wilt gebruiken naar de nieuwe functie. Op deze manier kun je de functionaliteit hergebruiken, zonder de code te kopiëren.

blank

Sylvia Straub

Meer informatie? Neem contact met mij op!
blank



De richtlijn toegepast in de praktijk 

Zodra je een bestaande functionaliteit wilt hergebruiken, pas je de boven beschreven richtlijn toe. Er is echter pas sprake van gekopieerde code, wanneer het om minimaal 6 regels code gaat. Ik heb meerdere projecten gezien waar gekopieerde code is blijven staan. Dat gebeurt bijvoorbeeld als developers de werking van een stuk code snel willen testen en achteraf vergeten om deze code in een nieuwe functie te zetten. Gelukkig kunnen we gebruikmaken van de BCH (Better Code Hub) van de SIG, een automatische tool die continue checkt of de ontwikkelde code aan de 10 SIG richtlijnen voor codekwaliteit voldoet*. Bij elke codewijziging zie je direct op een schaal van 1 tot 10 aan hoeveel richtlijnen je voldoet en kun je direct je code aanpassen om de hoogste score te realiseren. BCH checkt ook op dubbele code zodat je direct ziet of je codewijziging gekopieerde code bevat.


*    Better Code Hub checkt ontwikkelde code om te zien of deze voldoet aan de 10 benchmark richtlijnen voor kwalitatieve softwareontwikkeling. Het geeft direct feedback waar eventuele aanpassingen nodig zijn om maximale kwaliteit te kunnen realiseren.
BCH ondersteunt 17 verschillende moderne programmeertalen.
 


Dit levert de richtlijn op voor de klant 

Het eenmalig schrijven van code en deze hergebruiken in plaats van kopiëren, resulteert in makkelijker onderhoudbare code. Tijdens het ontwikkelen zelf kan het iets meer werk zijn, omdat je code uit de functie moet halen, als een aparte functie op moet slaan om deze vervolgens weer op een nieuwe plek te kunnen hergebruiken. Daar staat tegenover dat wanneer er een probleem in dit stukje code wordt ontdekt, je maar op één plek wijzigingen door hoeft te voeren. Je bent dus veel minder tijd kwijt met het zoeken en aanpassen van code. Het toepassen van de 10 richtlijnen is niet in alle gevallen even makkelijk aan een opdrachtgever uit te leggen, maar in dit geval is het niet moeilijk om te begrijpen dat de initiële investering zich al snel terugverdient.

Zo helpt de richtlijn mij als ontwikkelaar 

De richtlijn zorgt ervoor dat er uiteindelijk minder regels code worden geschreven en dat heeft een aantal voordelen, ook voor mij als software developer. Als je nieuw bent binnen een project is het werk overzichtelijker en snap je sneller waar het over gaat. Daardoor kun je zelf ook eerder een bijdrage gaan leveren. Doordat eventuele fouten maar op 1 plek optreden en niet (meer) in gekopieerde code, kost het mij minder tijd om eventuele fouten in de code te vinden en te corrigeren. Daardoor hou ik meer tijd over om nieuwe functionaliteit te ontwikkelen en implementeren en dat is uiteindelijk toch wel het leukste aspect van mijn werk. Wanneer de door jou ontwikkelde applicatie daadwerkelijk in de praktijk wordt gebruikt en ook nog eens goed wordt ontvangen, dan geeft dat echt veel voldoening. Voor een van onze klanten heb ik bijvoorbeeld een bijdrage mogen leveren aan www.rijksoverheid.nl – als je bedenkt hoeveel mensen er dan uiteindelijk gebruikmaken van de stukken code die jij hebt ontwikkeld, dan is dat best bijzonder.


Over de auteur

Sylvia Straub is inmiddels alweer ruim 4 jaar werkzaam bij OVSoftware als IT professional. Tijdens haar studie chemie kwam ze in aanraking met website development en vond dat uiteindelijk zo boeiend dat ze de overstap maakte naar informatica. Sylvia is een gedreven full-stack ontwikkelaar met een voorkeur voor front-end ontwikkeling. Haar communicatieve vaardigheden, proactieve houding en sociale competenties leveren een belangrijke bijdrage aan het succes van de scrum teams waarin zij wordt ingezet.