Na de opkomst van het web 2.0 ontstond de noodzaak voor frameworks. Dit kwam omdat de vraag naar grotere en interactievere web applicaties sterkt toenam. Hieruit ontstond een explosie aan javascript frameworks. De 3 grootste en bekendste opensource javascript frameworks zijn React, AngularJS en Vue. Zoals je je kan voorstellen verschillen de frameworks nogal elk heeft zo zijn sterke en zwakke punten.
Zoals ik in eerder artikel al heb uitgelegd bestond er na de opkomst van het web 2.0 de noodzaak voor frameworks. Dit kwam omdat de vraag naar grotere en interactievere web applicaties sterkt toenam. Hieruit onstond een explosie aan javascript frameworks. Zoals je je kan voorstellen verschillen de frameworks nogal. Somige zijn erg populair voor een jaartje en raken daarna in de vergetelheid en andere worden groter en groter.
Javascript frameworks zijn niet te verwarren met javascript bibliotheken. Het belangrijkste verschil is dat een bibliotheek bestaat uit een groep functies die een applicatie kan aanroepen om een bepaalde taak te volbrengen (zie onderstaand voorbeeld) Een framework definieert hoe een ontwikkelaar een applicatie ontwikkeld. In andere woorden een framework roept de applicatie code aan, terwijl bij bibliotheken de applicatie code een functie uit de bibliotheek aanroept.
De 3 grootste en bekendste opensource javascript frameworks zijn React, AngularJS en Vue
AngularJS is een open-source front-end web framework dat onderhouden wordt door voornamelijk Google en een community van toegewijde ontwikkelaars. Het is ontwikkeld om het maken en testen van single-page-applications makkelijker te maken. Dit doet het door een framework voor een client-side Model View Controller op te zetten.
Fun Fact
Angular ook wel Angular 2+ of v2 genoemd is een TypeScript opensource web applicatie framework onderleiding van het Angular team van Google Angular is een complete herschrijving van het team dat AngularJS gemaakt heeft.
AngularJS is het frontend gedeelte van de zogenaamde MEAN stack dit staat voor M(ongoDB)E(xpress.js)A(ngularJS)N(ode.js). MongoDB is een document georiënteerde database. Express.js is een web applicatie node js framework. En Node.js wordt gebruikt als server runtime omgeving dat JavaScript code kan uitvoeren buiten de webbrowser.
Vue.js is een open-source model-view-viewmodel JavaScript framework waarmee je user interfaces en single-page applicatie kan maken. Het is gemaakt door Evan You en wordt onderhouden door hem een groep van actieve core leden die uit verschillende bedrijven komen. Vue is de enige van de drie frameworks die ik vandaag benoem zonder een groot bedrijf erachter.
Vue is ook de jongste van de 3 maar is in de afgelopen paar jaar enorm gestegen in populariteit. Het is makkelijk te leren en het is erg light-weight ongeveer 30kb. Veel front-end ontwikkelaars vinden dat Vue de makkelijkste learning curve heeft van de 3 wat een van de redenen is waarom het zo populair is bij front-end ontwikkelaars.
React hebben we natuurlijk al een stukje over verteld in een vorig artikel. Zoals we daar hebben gezegd is React uitermate geschikt voor het maken van interactieve gebruikers interfaces maar ook een widget maken kan heel gemakkelijk met React. Je kan met React simpele overzichten renderen voor elke state in je applicatie. En door het maken van react components kan je deze hergebruiken door je applicatie heen.
React is inmiddels de grootste van de JavaScript frameworks en dat is een naam die hij zeker verdiend heeft. React heeft het concept virtual DOM geïntroduceerd een abstracte kopie van de DOM (Document Object Model) waar ontwikkelaars React features kunnen gebruiken zonder de hele DOM opnieuw te laden.
React heeft niet de laagste learning curve maar men kan relatief eenvoudig een nieuw project starten met behulp van de uitgebreide handleidingen. React heeft een aantal uitstekende uitbreidingen waarmee je heel makkelijk complete webapplicaties kan maken (bvb. react bootstrap en react native) en het werkt heel goed samen met verschillende supporting tools bvb Redux.
Dan krijg je nu natuurlijk de vraag der vragen welke van deze frameworks is nou eigenlijk het beste. En eigenlijk is daar geen heel concreet antwoord op te geven zo hebben ze allen hun voor en nadelen. Als ik tot een antwoord gedwongen zou worden zou ik toch kiezen voor React puur vanwege de versatiliteit, het is uitermate geschikt voor kleine applicaties en voor widgets. En als je een grotere applicatie nodig hebt die moet schalen dan kan je met extra bibliotheken een heel solide framework neerzetten. Ook een groot voordeel van React is dat het niks geeft om de onderliggende technologie stack die je gebruikt om je data mee te controleren alles wat React doet is de data weergeven op je scherm. En door het gebruik van de Virtual Dom maakt het je applicatie razend snel. Daarom staat voor mij React bovenaan.
Ook interessant
Breid je kennis uit met de 4BIS Blog...
kennisbank, Webontwikkeling, Digitale Marketing
Als je je software wilt optimaliseren, is de A/B test één van de beste manieren om dit aan te pakken. Meestal wordt deze test uitgevoerd op een website, maar het is ook mogelijk om dit voor software te doen.
Lees meerkennisbank, Webontwikkeling, Hosting, Symfony, React, JavaScript
Als je een app wilt laten bouwen voor een smartphone, krijg je te maken met de termen webapp en native app. Maar wat is het verschil nu precies? Het is één van de eerste vragen die je jezelf moet stellen, wil ik een webapp of een native app? Er is geen...
Lees meerSoftware modernisering, Webontwikkeling, B2B, Saas, Bedrijfssoftware, Digitale Marketing
Bij 4BIS Innovations zijn we verheugd om ons strategische partnerschap met MyChefsbase aan te kondigen, een toonaangevend restaurantmanagementplatform dat de manier waarop chefs en restaurant eigenaren recepten, menu's en operaties beheren, transformeert.
Lees meer Wil je meer weten of heb je interesse? Neem dan gerust direct contact met ons op, per telefoon of via de mail.
Of maak gebruik van één van onze contactformulieren zodat we je zo snel en gepast mogelijk antwoord kunnen geven. We horen graag van je!