JavaScript Frameworks, welke moet je kiezen?

Blog

De afgelopen jaren is Front-End steeds belangrijker geworden binnen web-development. Met de opkomst van krachtigere Front-End-platformen als Angular, React en VueJS is het mogelijk geworden om applicaties te bouwen die veel meer kunnen dan alleen een view weergegeven. De afgelopen jaren zie je steeds vaker dat de ook de Business Logic het terrein wordt van de Frontender.

Van dichtbij heb ik deze omschakeling mee mogen maken; in de afgelopen 10 jaar heb ik als Front-End Developer veel zien veranderen in de manier waarop teams samen werken, en de rol die de Frontender speelt binnen een development-team.

Deze verandering heeft een aantal redenen:

  1. De kracht en de mogelijkheden van de platformen als Angular, React en VueJS
  2. De toegankelijkheid van de tools: de meeste tools en platformen zij gratis en vrij te gebruiken. Hier door is het erg makkelijk en aantrekkelijk om één van de beschikbare frameworks uit te proberen
  3. Door de Open Source communities die de platformen voorzien van ondersteuning en plugins.

“Ok, JavaScript Frameworks dus… Maar welke is het beste?”

Dit is uiteraard erg opinionated; vraag het aan drie verschillende developers en je krijgt 3 verschillende antwoorden. Maar er zijn een aantal manieren om een hier een beter beeld van te krijgen:

  1. Github Star rating: Op GitHub en in de Front-End community is er al een tijdje een strijd gaande is om de hoogste star-rating. Februari 2019 is de stand als volgt:

    Platform screenshot Github link
    Vue.js 130.740

    vuejs.org
    React 124.398

    reactjs.org
    AngularJS 59.436

    angularjs.org
    Angular 46.103

    angular.io


    bron: https://bestofjs.org/tags/framework

  2. Community surveys: er zijn een aantal surveys die jaarlijks gehouden worden, waarbij de community de kans krijgt om hun ervaringen te delen. In onderstaande afbeelding zien we bijvoorbeeld dat 64,8% van de ondervraagde developers React heeft gebruikt, en bij een volgend project dit ook weer zal gebruiken. Dit staat in groot contrast tot Angular, waarbij slechts 23,9% het nog eens zou gebruiken.

    bron: https://2018.stateofjs.com/Front-End-frameworks/overview/

  3. De eigenschappen afwegen: De plussen en minnen per framework (in vogelvlucht):

    Platform Voordelen Nadelen
    Vue.js
    • Populaire nieuwkomer
    • Vue-html is makkelijk te leren

    • Geen groot bedrijf als stakeholder
    • Veelal een uitzondering wat betreft syntax in vergelijking met andere frameworks

    React
    • Ontwikkeld door Facebook
    • Grote community
    • JSX voor templates
    • Veel gevraagde techniek bij klanten

    • Stijle learning Curve

    AngularJS
    • Ontwikkeld door Google

    • Niet meer actief ondersteund (Long Term Support tot juli 2021)
    • Verouderde syntax

    Angular
    • Ontwikkeld door Google
    • TypeScript
    • Compleet (o.a. routing en formulier validatie zijn inbegrepen)

    • Stijle learning Curve
    • Wordt vaak verward met AngularJS


  4. Common sense: uiteindelijk is het belangrijk dat een framework of een architectuur gekozen wordt waar het team zich prettig bij voelt en wat aansluit bij de kennis en ervaring van het team. Gezien we bij ShareValue werken aan verschillende opdrachten bij verschillende opdrachtgevers, kennen wij alle frameworks en kunnen we overal mee werken.

En welk framework zou ik zelf kiezen?...

Zelf heb ik als Front-End Developer ervaring met AngularJS, React, Angular CLI, VueJS, en ben sinds kort ook SvelteJS aan het onderzoeken. Als Developer ben ik vrij pragmatisch; Het framework is uiteindelijk slechts een tool om het einddoel te bereiken, en niet het doel op zich.

Moet jij binnenkort een keuze maken voor een framework? Mijn collega’s en ik helpen je graag!

Geïnteresseerd? Neem contact met ons op als we je kunnen helpen.

Auteur Johan Developer

Heb je vragen over dit onderwerp of zou je Johan willen inhuren voor een vergelijkbare opdracht?

Neem contact met ons op

Heb je een Front-End Developer nodig?

Neem contact met ons op

Zoek je een nieuwe baan?

Bekijk onze vacatures