Iterables en observables: hoe zit dat?

JavaScript. Dé taal van het internet. Onder andere webpagina’s, webapplicaties en SAP Fiori maken er gebruik van. Om JavaScript te gebruiken zijn er talloze manieren om je code te schrijven en te zorgen dat de code het juiste uitvoert. Maar hoe leesbaar en efficiënt de code is kan behoorlijk verschillen. Hoe zorg je je nu dat de code ook makkelijk weer te lezen is of op te pakken door een ander, óf zelfs door jezelf als je een jaar later een wijziging wil doorvoeren? En hoe houden we het efficiënt? 

 

Eén ding is zeker: iedere developer heeft wel eens dat hij zijn eigen code weer ziet en geen idee meer heeft wat er precies gebeurt. Iterables en observables kunnen hierbij helpen!

Wat zijn Iterables & observables?

Binnen JavaScript zijn er verschillende lagen van abstracties. Niet alle abstracties zijn goed, maar ook niet alles is direct slecht. Abstractie wil je vooral gebruiken om code duplicatie te verminderen en kleine details te verbergen in de code. Dit maakt het mogelijk om functies privé te maken. Iterables en observables zijn speciale abstracties van functies. Denk bijvoorbeeld aan getter functies, functies waaraan je geen argument meegeeft maar die wel iets teruggeven, die je kunt zien als gespecialiseerde functies. 


Getter functions 

We kunnen het object car met de getter getCar() vergelijken: 

const car = {brand: “Volvo”, model: “V60”, year: 2019}; 
console.log(car.brand) // Volvo 

function getCar() { 
return {brand: “Volvo”, model: “V60”, year: 2019};

console.log(getCar().brand); // Volvo 

Door een getter aan te maken wordt het object niet zomaar aangemaakt als dit niet nodig is. De getter geeft ook een extra voordeel: implementatie flexibiliteit. We kunnen het object dat wordt teruggegeven vanuit de functie op meerdere manieren aanmaken. Dit kan zowel via een plain object, instance van een class en proporties prototype. Deze flexibiliteit ontstaat niet als alles hard-coded zou zijn. Computations op getter functies kunnen ook abstract zijn en een groot voordeel hebben. Ze kunnen dan ook functies doorgeven aan andere functies. 


De werking van setter functies 

Setter functies zijn functies die wel een argument verwachten, maar niks teruggeven. Setters zijn geen abstracties, maar men kan er wel wrappers voor bouwen. Gespecialiseerde setter functies zijn wel weer abstracties, denk bijvoorbeeld aan “addEventListener”. 


Code onder controle

Iterables en observables zijn een gespecialiseerde abstractie van functies, waardoor er meer structuur gegeven kan worden aan de code. Dit zorgt ervoor dat de code leesbaar en beheersbaar wordt. Dit laatste is voor developers erg belangrijk. Door de code netjes op te bouwen, voorkomen we dat projecten geen spaghetticode bevat. Dit is een nachtmerrie voor het beheer van de applicatie en de overdracht. Hulp nodig bij het implementeren van iterables en observables? TheValueChain helpt graag. Neem vrijblijvend contact met ons op! 

Meer weten?

Neem voor meer informatie en het gebruik van onze ruime ervaring in implementaties, ondersteuning en het bouwen van extra add-ons contact met ons op.