Programmeerstijl
Van Wikipedia
Programmeerstijlen kunnen bepaald worden vanuit de volgende punten:
[bewerk] Ontwikkelmethodieken
Veelal binnen het bedrijfsleven wordt er middels een bepaalde methodiek ontwikkeld. Dit komt in het geval van ICT vaak neer op Prince2 en DSDM. Deze methodieken bepalen naast de planning vaak ook de manier van programmeren aan, en hoe diverse programmeurs samenwerken aan 1 codebase van een bepaalde applicatie.
Bij andere methodieken zoals XP (eXtreme Programming) is het de bedoeling dat professionele programmeurs elk hun eigen doelstellingen krijgen die binnen een bepaalde tijd gerealiseerd moeten worden. Dit heeft vaak ook tot resultaat (indien er iets mis gaat) dat de code qua programmeerstijl vaak heel divers is. Dit wordt mede veroorzaakt door het feit dat XP geen gebruik maakt van terugkoppeling naar de desbetreffende gebruiker/manager/opdrachtgever. Alle programmeurs zien dus niet bij elkaar wat ze aan het doen zijn. Het blijft uiteindelijk maar hopen of alle componenten met elkaar zullen samenwerken.
Bij DSDM en Prince2 is de terugkoppeling naar de gebruiker enorm belangrijk en staat ontwerp voorop. Dit verbetert de eenduidigheid in het ontwerp en de code aanzienlijk, mede door de terugkoppeling tussen de programmeurs onderling en naar de manager/gebruiker/opdrachtgever.
[bewerk] Codeopmaak
Wat betreft de opmaak van de code wordt er meestal gebruikt gemaakt van een lettertype met een gefixeerde breedte, zoals 'Courier New'. Hierdoor kan men eenduidig inspringen in de code met behulp van tabs of spaties, aangezien 1 karakter altijd even breed is.
Inspringen gebeurt meestal bij een nieuw 'code block'. Deze blokken staan meestal achter nieuwe functiedefinities, booleanse vergelijkingen (if-then-else-structuren, for/while-loops) of bij 'scopes' voor bepaalde variabelen.
Voorbeeld van een C functiedefinitie:
void functionName(char * variableName) { }
Het feit dat het stukje code hierboven iets inspringt heeft al te maken met de stijl waarin dit artikel is geschreven. Hetzelfde geldt voor de vormgeving (oftewel stijl) van de code.
Het bovenstaande stuk code kan ook als volgt worden weergegeven:
void functionName(char * variableName){}
In het bovenstaande stuk code is het zogenaamde 'code block' verplaatst naar een plaats direct na de functienaam. Beide manieren werken perfect en het is meer een kwestie van smaak van de programmeur(s) welke gebruikt wordt. In het geval van een ontwikkelgroep is het wel van belang dat alle programmeurs dezelfde stijl hanteren, omdat anders 2 verschillende opmaakregels gebruikt zouden worden binnen de broncode van hetzelfde programma. Dit maakt de code minder goed leesbaar en dat is onhandig bij het opsporen van problemen of uitbreiding/wijziging van de code.
[bewerk] Programmaontwerp
Programma ontwerp heeft ook te maken met programmeerstijlen. Denk hierbij aan de volgende vragen:
- Wordt het programma een sequentieel stuk code of wordt het een objectgeorienteerd geheel?
- Worden ontwerp en implementatie gescheiden in de code?