Codekraker 16: Benjamin Faal - Werkenbijtopicus
Codekraker 16: Benjamin Faal

Codekraker 16: Benjamin Faal

‘Dit nieuwe front-end framework presteert op alle fronten beter dan de rest.’

Experimenteer bij nieuwe projecten met web framework Svelte

Tot voor kort zwoer ik bij React. Dat is nog niet veranderd, maar ik heb mijn hoop gevestigd op een nieuw, nog relatief onbekend front-end framework. Natuurlijk heeft ieder framework zijn voor- en nadelen, maar sinds ik dit framework ben tegengekomen ben ik helemaal om. Sterker nog: op bijna alle fronten presteert deze beter dan de rest. Ik heb het over Svelte. Ga je aan de slag met een nieuw project of applicatie? Bouw hem dan in Svelte en experimenteer met dit nieuwe web framework. Naar mijn mening gaat dit framework de andere grote namen binnen nu en 2-3 jaar vervangen.

Als je als developer werkt voor een organisatie krijg je met genoeg verschillende frameworks te maken: React, Angular, Wicket. Sommige bestaande applicaties draaien nu eenmaal nog op wat oudere frameworks, maar voor nieuwe projecten begin ik graag met een schone lei. Vooralsnog leek React voor mij het perfecte framework. Vergeleken met Wicket is dat al een hele vooruitgang. Maar Svelte is wat mij betreft the next big thing. Het verbaast me dan ook dat het nog niet zo bekend is.

Enkele weken geleden maakte ik zelf kennis met Svelte. Ik volgde de tutorial en ben gaan testen met het bouwen van een POC applicatie. Sindsdien ben ik om, de lijst met voordelen is teveel om op te noemen. De grootste voordelen? Svelte neemt heel veel werk uit handen. Je hoeft vaak zo’n 40% minder code te schrijven, waardoor er dus ook minder ruimte is voor fouten én de code een stuk leesbaarder is. Ook heb je weinig tot geen boilerplate meer en dus geen dubbele code, wat bij React toch sneller het geval is. Svelte heeft ook two-way-binding: aangepaste waarden in bijvoorbeeld tekstvelden die automatisch aan twee kanten reflecteren. Én het framework biedt in veel gevallen simpelweg een betere performance. De vertaalslag met de virtuele DOM heb je niet meer, alles wordt als HTML-elementen rechtstreeks in de echte applicatie gerenderd. En zo kan ik nog wel even doorgaan: het is component based, draait niet als framework tijdens runtime maar is een compiler, heeft ingebouwde state management, is volledig HTML/CSS/JavaScript compliant met wat extra handige syntax waardoor je nog sneller kunt ontwikkelen.

Heeft Svelte dan helemaal geen nadelen? Bijna niet. Behalve dat er aan het leren kennen van het framework wel een kleine leercurve verbonden zit, maar dat is logisch. En met de tutorial heb je het zo onder de knie. Een ander nadeel zou kunnen zijn dat Svelte nog geen backing support heeft van bijvoorbeeld Google of Facebook, maar ik verwacht dat dit binnenkort gaat komen.

Kortom: Svelte is een new kid on the block. Wat mij betreft dus nu hét moment om ermee te experimenteren. Ik raad aan om nog niet direct je grote projecten te migreren, maar ga aan de slag met nieuwe projecten in Svelte en breid je bestaande applicaties uit met Svelte componenten. En dan zul je zelf ook snel genoeg merken dat dit nieuwe framework echt een blijvertje is.

Benieuwd naar andere codekrakers? Je checkt ze hier of lees meer over front-end in de Codekraker van Jelmer waarin hij je vertelt hoe je met Web Components je front-end geleidelijk kan vernieuwen.