7. Functionele Dingen Programmern Block

“Ik pas de content van die 32 websites die ik beheer wel handmatig aan…”

Omschrijving:
Back-end development.
Hierbij komt de techniek kijken waarbij informatie, aan de kant van de server, verwerkt wordt (bijv. in een database). Hiermee kan de informatie op één plek beheerd worden en kunnen meerdere clients van dezelfde data gebruik maken. Het beheren van de content kan ook via een webinterface gebeuren, een zogenaamd Content Management Systeem (CMS).
Bij het uitwerken van de code is efficiëntie van groot belang. De hoeveelheid data die van server naar client gaat moet zo laag mogelijk zijn en het moet voor een programmeur niet te veel tijd kosten om onderdelen aan de code toe te voegen of aanpassingen te doen. Hergebruik van code, aanbrengen van structuur en het generiek opzetten van code is daarom belangrijk.
Een ander onderdeel dat bij efficiëntie hoort, is het gebruik maken van onderdelen die al bestaan of te specialistisch zijn om zelf te bouwen, denk aan een bestaande library of het gebruik van een API. Kwaliteitscheck: je weet wanneer je code zelf moet schrijven of gebruik kan maken van libraries of het aanroepen van data uit een API. Je geeft nog steeds blijk van kennis wat er in de library of de API gebeurt, ondanks dat het niet jouw code is.

Uitdagingen:
Je hebt een website gebouwd, gevoed door een database, waarbij inhoud (content), logica (programmeren) en opmaak van elkaar gescheiden zijn zodat overzicht en structuur ontstaat.
Je hebt een website gebouwd waarmee de content van een website beheert kan worden (eenvoudig CMS):
CRUD functionaliteit
JOIN(s)
Selections (bijv WHERE, LIKE, ORDER BY)
Je weet wanneer je code zelf moet schrijven of gebruik kan maken van libraries of API om op die manier tijd te besparen.
Je weet hoe je een bestaande library kunt implementeren in jouw project zodanig dat je de functies in de library kunt aanspreken en dit kunt aantonen in projecten die je zelf gemaakt hebt.
Je kunt objectgeoriënteerde code schrijven (tot enkelvoudige overerving) om op deze manier complexe code te structureren.