Een van die nieuwere ontwikkelingen is de opkomst van Polymer. Polymer is een veelbelovende nieuweling in de Javascript-wereld. Deze bibliotheek is ontwikkeld door Google en om meerdere redenen erg interessant.
Standaardisatie
Ten eerste onderscheidt Polymer zich door gebruik te maken van de html5-standaarden en ontwikkelingen. Hierdoor beschikt de bibliotheek over functionaliteit dat naadloos aansluit bij html5-webcomponenten. Polymer biedt een aantal zaken zoals een bibliotheek met functionaliteit voor, onder andere, het registreren van componenten en het bieden van databinding. Er is ook een 'polyfill' voor oudere browsers. Dit betreft functionaliteit voor het laten werken van Polymer op browsers die niet uitgerust zijn met de benodigde html5-technologie. Tenslotte is er een catalogus aan componenten, klaar voor gebruik tot compositie van een applicatie.
Polymer heeft de hierboven genoemde polyfill inmiddels overgedragen aan Webcomponents.org onder de naam Webcomponents.js. Deze polyfill is een zelfstandige laag geworden waarop ook andere partijen hun component-bibliotheken kunnen baseren. Deze polyfill realiseert een gemeenschappelijke, gestandaardiseerde laag waar alle grote browsers (html5 en oudere) aan voldoen.
Polymer is een van de bibliotheken die van deze laag gebruik maakt en de eerder genoemde functionalteit biedt. Er zijn ook andere spelers op de markt, zoals Microsoft met x-tags, die meedoen aan de ontwikkeling van webcomponents gebaseerd op html5 standaarden. Meer hierover is te vinden op de site van webcomponets.org.
Polymer ligt dus erg dicht tegen html5 aan en vormt als het ware een dun laagje functionaliteit bovenop de html5-standaard. Dat maakt het een interessante ontwikkeling.
Building blocks
Polymer beschikt zoals reeds gezegd over een toolbox waarmee je allerlei functionaliteit kunt bouwen. In deze toolbox zitten declaratieve bouwstenen die ontwikkelaars helpen bij het eenvoudig ontwikkelen van een applicatie. Zo zijn er veel user interface componenten.
Hierdoor kun je als ontwikkelaar eenvoudig een goede user interface bouwen en een optimale user experience bieden. Deze componenten zijn met aandacht voor verschillende schermgrootten en oriëntaties geschreven en passen zich aan aan het apparaat dat de applicatie presenteert (adaptive rendering).
Dit zijn belangrijke zaken waar je als applicatieontwikkelaar altijd aandacht aan moet besteden maar wat niet iedereen even gemakkelijk afgaat.
De toolbox biedt verder componenten die 'material design' implementeren (de zogenaamde Paper-Elements). Bij deze componenten is de gebruiker-interface al ingebouwd.
Bij andere frameworks, zoals Angular2, is de gebruiker-interface een toevoeging op het framework (Angular2 material) en kost het maken van een gelijksoortige interface meer inspanning. Uiteraard kun je ook met Angular2 je eigen interface opbouwen (iets wat waarschijnlijk veel gedaan wordt) maar dat vereist uiteraard wel goede ontwerpkwaliteiten. Er zal eveneens bij het ontwerpen aandacht moeten worden besteed aan adaptive rendering, zoals eerder besproken. Dit kan behoorlijk wat inspanning kosten.
Verder kun je met Polymer eenvoudig documentatiepagina’s uit de componenten halen. De componenten die je zelf ontwikkelt zijn eenvoudig te testen met de webcomponent-tester.
Tenslotte kent Polymer mogelijkheden om afhankelijkheden te detecteren en voor productieomgevingen overbodige afhankelijkheden te minimaliseren, dit process heet ‘vulcanizen’. ‘Vulcanize’ is te installeren als een NodeJS package en kan gemakkelijk worden uitgevoerd via de command line.
Uiteraard biedt Polymer de mogelijkheid om eigen componenten te bouwen. Componenten kunnen worden voorzien van properties en methods. Deze zijn te configureren voor publieke toegang. De components kunnen daarna gebruikt worden zoals alle andere components ook werken.
Er zijn al meerdere third-party componenten te vinden en klaar voor gebruik (onder andere poly-more).
Kortom: Polymer stelt je in staat om snel, rijke en goed vormgegeven applicaties te realiseren.
In opkomst
Sinds Polymer op de markt kwam in 2013, en officieel is gelanceerd in 2015, is er veel gebeurd. Polymer zit tegenwoordig op versie 1.6.1 en alle veranderingen in Polymer zijn terug te lezen op de site van polymer-project.org.
Polymer is gemakkelijk te combineren met andere frameworks. Hierdoor is het dus niet verwonderlijk dat er vanuit steeds meer organisaties interesse is voor Polymer. Tegenwoordig bevinden zich onder Polymer-gebruikers grote namen, zoals het Google Chrome-team, ING, Bloomberg en Salesforce.
De komende tijd zullen Javascript in combinatie met html5 en de web-stack een grote rol blijven spelen bij de ontwikkeling van applicaties. Maar voor bedrijven die nu al in ReactJS of Angular werken, is Polymer wellicht minstens zo interessant of zelfs nog interessanter.
Om te kunnen beoordelen moet u ingelogd zijn: