Webdevelopment, ook wel webontwikkeling genoemd, is een verzamelnaam die wordt gebruikt voor alles wat te maken heeft met het ontwikkelen van een website en de oplossingen daaromheen.
Zowel het bouwen van een simpele statische website met wat tekst en plaatjes als het ontwikkelen van een complex klantportaal wordt onder webdevelopment verstaan.
Hoewel er wel honderden topics zijn die te maken hebben met webdevelopment, springen er vier in het specifiek uit en dat zijn: front-end development, back-end development, Content Management Systeem (CMS) en web development voor bedrijven. Hierop gaan we dieper in.
Front-end development
Front-end (voorkant) is het gedeelte van een website of webapplicatie dat voor de gebruiker zichtbaar is. De front-end wordt ook wel de user interface (UI) of gebruikersinterface genoemd. Het doel van front-end development is het ontwerp van een website of webapplicatie zo prettig en intuïtief mogelijk maken voor de gebruiker. Tegelijkertijd moet ook het technische gedeelte werkend gekregen worden.
Een front-end developer is iemand die verantwoordelijk is voor de technische kant van het front-end en maakt gebruik van HTML, CSS en JavaScript. Deze persoon zorgt voor een verbinding tussen het design en de programmatuur die nodig is om een webapplicatie compleet te maken.
Voorbeelden van vraagstukken waarmee een front-end developer bezig is, zijn:
- Hoe maak je een responsive website of webapplicatie die zich aanpast aan de schermformaten van een mobiele telefoon, tablet of pc?
- Hoe zet je een template op voor een CMS zoals WordPress dat goed beheerbaar is voor gebruikers, maar tegelijkertijd ook van lichtgewicht afgestemd op de zoekmachines (SEO)?
- Hoe style je een pagina en wat voor type afbeeldingen en animaties gebruik je voor een zo’n aantrekkelijk en intuïtief mogelijk design?
- Hoe ga je om met browserverschillen tussen bijvoorbeeld Chrome, Firefox en Safari?
Back-end development
Een website of webapplicatie bestaat naast een front-end gedeelte ook uit een back-end omgeving. Dit is het gedeelte van een toepassing dat niet zichtbaar voor de gebruiker. Denk bijvoorbeeld aan een dashboard of database, waarin beheerders wijzigingen en nieuwe data kunnen invoeren. Een belangrijk onderdeel van de back-end is ervoor zorgen dat de front-end maximaal ondersteunt wordt en kan communiceren met andere programma’s en applicaties.
Back-end developers richten zich voornamelijk op het ontwikkelen en onderhouden van de gehele back-end, die bestaat uit kernfunctionaliteiten (dat wat een webapplicatie logica geeft), databases, servers en API’s (koppelingen met andere systemen). Ook houdt de back-end developer zich bezig met het testen en debuggen van back-end systemen.
Een back-end developer houdt zich bijvoorbeeld bezig met:
- Zorgen dat nieuwe gebruikers en hun data automatisch en op een veilige manier geregistreerd worden
- Een database, server en (web)applicatie met elkaar laten communiceren en realtime data-uitwisseling realiseren
- Het implementeren van betaalmethoden in een webapplicatie of een compleet klantenportaal ontwikkelen
- Het bouwen van API’s tussen één of meerdere systemen
Content Management Systeem (CMS)
Een Content Management systeem is een softwaretoepassing, meestal een webapplicatie, die het mogelijk maakt voor gebruikers om op een eenvoudige manier content op het internet te publiceren. Dit betekent dat ook gebruikers zonder al te veel technische kennis goed overweg kunnen met een CMS. In andere woorden: je hoeft niet veel verstand te hebben van webdevelopment om met een CMS te kunnen werken.
Het meest gebruikte CMS van de wereld is WordPress. Ooit begon het CMS als een blog platform, maar tegenwoordig wordt WordPress gezien als een volwaardig CMS vanwege de vele functionaliteiten die het biedt. Daarom is het voor vrijwel elk bedrijf – van corporates tot kleinere webshops en alles daar tussenin – uitermate geschikt.
Net als de meeste CMS’en is ook WordPress open source, oftewel gratis en voor iedereen toegankelijk. Het grote voordeel hiervan is dat in feite elke WordPress developer met het systeem overweg kan. Mocht je dus gebruik gaan maken van WordPress en van developer willen overstappen, dan is dat mogelijk.
CMS vs framework
Zowel websites als webapplicaties kunnen in hetzelfde systeem gemaakt worden. Toch is dit niet altijd een slimme set. Je hebt namelijk te maken met verschillende factoren zoals complexiteit, ontwikkeltijd, snelheid en schaalbaarheid.
WordPress is bijvoorbeeld geschikt voor zowel websites als voor webapplicaties. Een framework zoals Lavarel is geschikter voor complexe webapplicaties, maar iets minder geschikt voor websites omdat er geen standaard templates beschikbaar zijn en het ontwikkelingsproces lang duurt.
Webdevelopment voor bedrijven
De meeste bedrijven die benaderen voor hun webdevelopment vraagstuk een bureau dat daar gespecialiseerd in is. Zelf hebben ze namelijk vaak niet het personeel noch de tools om hun website of webapplicatie te ontwikkelen.
Als je jouw vraagstuk bij een webdevelopment-bureau neerlegt, dan inventariseren ze hoe ze jou het best kunnen helpen. Afhankelijk van het vraagstuk, kijken ze met welke systemen en tools ze jouw wens kunnen vervullen. Moeilijke systemen waar een bepaald framework en veel kennis voor nodig is, hebben meestal een hoger kostenplaatje dan een ‘simpele’ website.
Een webdevelopment proces ziet er vaak als volgt uit:
- Kennismaking en inventarisatie
- Virtueel concept
- Ontwikkeling & constante feedback
- Oplevering en livegang
- Doorontwikkeling
De eerste stap is het inventariseren wat de wens van de klant is en wat er precies ontwikkeld moet worden. Het eerste gesprek vindt meestal via de telefoon plaats, waarop een verdiepingsgesprek volgt.
Als beide partijen vervolgens met elkaar in zee gaan, begint het bouwen waaruit meestal een eerste virtueel concept voortkomt. Dit is een ontwerp van de website of webapplicatie die voor de klant gebouwd gaat worden. Op basis hiervan bepaalt de klant of dit is wat hij of zij in gedachten heeft.
Geeft de klant een go, dan begint het definitieve ontwikkelingsproces dat bestaat uit verschillende testfases en feedbackloops. Als het project af is en de klant tevreden is, wordt de website of webapplicatie geïntroduceerd en live gezet. Hierna wordt de website of webapplicatie beheerd door het bureau of de klant zelf, afhankelijk van de afspraken.
In de praktijk is het project vrijwel nooit klaar omdat er zelfs na de oplevering vrijwel altijd doorontwikkeld wordt. Daarom is de klant vaak erg gebonden aan het bureau dat het systeem heeft ontwikkeld.