10. Single Page Applications



Vergelijkbare documenten
React en React Native voor websites en apps

03. Statistieken van Mobiele apps

13. De ideale product owner

02. Responsive Design

15. Google Tag Manager

Frontend performance meting

10 onderdelen die niet mogen ontbreken in een online briefing

01. Cookiewet en mobiele apps

WHITEPAPER IN 5 MINUTEN. 09. ibeacons

Zit de online burger wel online op u te wachten? Door: David Kok

W H I T E P A P E R I N 5 M I N U T E N J U N I De app in een goede mobiele strategie

WHITEPAPER IN 5 MINUTEN. 11. Scrum

Bottleball Onderzoeksverslag MovingMonsters. Uitgevoerd door Arno Classens

ERGER JIJ JE OOK AAN DIE LOSSE PAPIERTJES, DE FOTO S DIE

Hoe bouw je een goede website/webshop?

Ontdek hoe je een Wordpress thema vindt dat echt bij jou past!

Grafisch ontwerp. Referenties.

Delft-FEWS & Web Services

Waarom WordPress? Wat is WordPress? Bloggen en website Uniek design is mogelijk Makkelijk zelf te beheren

WHITEPAPER IN 5 MINUTEN. 12. Mooier, maar vooral beter

WEBSITE SCAN Vrijblijvend advies

LES 1: AAN DE SLAG MET WORDPRESS. Lesoverzicht: Aan de slag Wat is WordPress CMS Front-end Back-end Samenvatting. Tijd: 5 minuten

theater & event crossmedia publishing engine Crowdhug is de nieuwe backbone van je theater

WESTPOINTDIGITAL MOBILE APPS DEVELOPMENT

Release nieuwe versie 1.9.3

1. Inleiding Hoe wordt mijn website gemakkelijk gevonden in de verschillende zoekmachines.

SEO advies plan. Tim Pieters M41T

Online Marketing. Door: Annika Woud ONLINE MARKETING

WebDAV versus iwork.com op je ipad

Meehelpen met de ontwikkeling van nieuwe of verbetering van bestaande spellen. Pag. 1

Angular Best Practices Door Alex en Chris van Beek

De doe-het-zelf SEO review [checklist]

Omzeil het gebruik van mappen en bestanden over Wiki s en het werken in de 21 e eeuw

Adverteren op Marketingmed.nl

301 redirect. 2xCeed BV Brede Englaan GS Huizen

WHITEPAPER IN 5 MINUTEN. 08. Content Design verdrijft CMS

MAAK EEN SLAG ONLINE. Sla nu een virtuele slag met de Werkende Website!

De voordelen van Drupal

Klik&Steen Dashboard. Wat zijn nou interessante statistieken bij websites?

01/05. Websites Nederland over. Mobile marketing. Whitepaper #03/2013. Mabelie Samuels internet marketeer

Start je eigen webwinkel en verleg je ambities. Maak gebruik van talloze mogelijkheden waar je bijzonder weinig voor betaalt. Vanaf 12,95 per maand

Variability in Multi-tenant SaaS Applications:

USABILITY VOOR HET WEB EN MOBIELE APPARATEN PETER KASSENAAR

PRESTATIESITE WEBPAKKET

Inhoud. Introductie tot de cursus

GEBRUIKERSHANDLEIDING INFORMATIESYSTEEM INLICHTINGENBUREAU

Geo-informatie en toegankelijkheid Technische sessie. NCDT 29 oktober 2014 Thijs Brentjens

10 x wijzer in 10 minuten

ExpressionEngine CMS. Content Management Systeem/Publicatieplatform NOAH DESIGN CREATIE & WEBDEVELOPMENT

Shared Data Store. Tom Demeyer, Taco van Dijk,

DE 13 BELANGRIJKSTE STATUSCODES

Poging 3: KEY001: SESID: Hiermee zijn we ingelogd als gebruiker DEMO2 :

SEO en Beslist.nl. Copyright Starteenwinkel.nl

SEO plan. Bart Janssen Semester 4 Fontys ICT & Media Design

Handleiding Wordpress

Drempelvrij samenwerken

Copyright 2014 IT Starts With Coffee

Handleiding Mooy Logistics Servicedesk

Web-Project: Animal Crossing Villager Lister Maxime Orione

WHITEPAPER. Wat is een. Responsive website? Voordelen van een. Responsive website? Hoe start je met een. Responsive website? RESPONSIVE WEBSITES

Afbeeldingen - formaat aanpassen

Gebruik van cryptografie voor veilige jquery/rest webapplicaties. Frans van Buul Inter Access

De Kleine WordPress Handleiding

2 Pagina s binnen TYPO3

Connect Social Business. Plan van Aanpak voor mijn stage bij ConnectSB

04. Tablets kun je niet meer negeren

OPTIMALISATIE MET HUMMINGBIRD

WEBANALYSE. WEBPAGINA: April Vervaardigd door:

Social media checklist

TuinHulp.com, Nieuwe Webservice voor Hoveniersbedrijven 2014

In deze PDF zal er vanuit worden gegaan dat je weet wat HTML is en dat je weet hoe je een website aan moet passen in de code.

Haal meer boekingen uit uw website! Meer bezoekers, meer boekingen, meer gasten Tommy Bookingsupport & TenZer

Datum: Gemaakt door: Berend de Groot Voor: ComSi, ROC Friese Poort

WHITEPAPER IN 5 MINUTEN. 14. Een app voor medewerkers

Gebruikershandleiding GO search 2.0

Een website: zelf doen of uitbesteden?

ProjectHeatmap. Onderzoeksrapport v Dennis Wagenaar

Is APEX a worthy substitute for Oracle Forms?

BETAALBAAR EN GOED ONLINE

Gebruikershandleiding websitebeheer m.b.v. Wordpress

Search Engine Optimalisation Rapport mrcreezy.be

Lege waarden importeren

Handleiding website FMS-spaarnwoude.nl

Connect Social Business. Plan van Aanpak voor mijn stage bij ConnectSB

SBO WEBSITES BOUWEN IN 7 STAPPEN

Acti er. Handleiding

Hoewel veel mobiele sites zijn ontworpen met het oog op weergave op mobiele apparaten, zijn ze vaak niet goed toegankelijk via een zoekmachine.

Social Media whitepaper

Technische data. Versie dec

Project plan. Erwin Hannaart Sander Tegelaar

SEO whitepaper. 1. Inleiding Wat is SEO? Onderdelen SEO Praktische SEO tips Hulp nodig? 10

Vragenlijst voor nieuwe website

C a s e S t u d y Y i f e C o n t a c t i n f o r m a t i e

Mobiele internet strategie

1. Werken bij mijn domein

qwertyuiopasdfghjklzxcvbnmq ertyuiopasdfghjklzxcvbnmqwer tyuiopasdfghjklzxcvbnmqwerty

Transcriptie:

WHITEPAPER IN 5 MINUTEN M E I 2 0 1 4 10. Single Page Applications Introductie De wereld verandert snel en gebruikers openen je site of applicatie steeds minder met een traditionele browser. Een site of app moet snel reageren, snappy aanvoelen, fijn in gebruik zijn en eigenlijk altijd beschikbaar. Een mogelijke oplossing, de Single Page Application, zien we de laatste jaren steeds meer. Ook de tools voor het bouwen van een Single Page Application zijn de laatste jaren steeds volwassener geworden. Tijd om de SPA en de tools ervoor eens op een rijtje te zetten.

Wat is een Single Page Application? Een Single Page Application (SPA) is een applicatie/site waarbij de pagina nooit in zijn geheel herlaadt. Voor de gebruiker is het één enkele pagina waarop alles gebeurt. Alle communicatie gebeurt onderhuids; uiteraard ziet de gebruiker continue nieuwe informatie, maar het gaat altijd om deeltjes van de site die worden geladen en getoond. Voordelen Een actie op een website veroorzaakt traditioneel een complete reload van de pagina. Heel veel elementen die je al zag, zie je opnieuw geladen worden. Bij een SPA worden alleen de elementen geladen die veranderen. Dit scheelt in dataverkeer en reactietijd. Omdat er maar een deel van de gegevens wordt geladen scheelt dit ook op de belasting van de server. Veel SPA s worden geschreven met een strikte scheiding tussen de voorkant (frontend) en de achterkant (backend/server). De communicatie vindt bij voorkeur plaats via een JSON API, waarbij de backend volgens standaarden met de frontend communiceert. Dit is een groot voordeel als er een tweede applicatie wordt gebouwd, zoals een native app. De backend is vaak al bijna klaar! Nadelen Het traditionele internetverkeer is helemaal afgestemd op de multi page variant. Dat zie je onder andere terugkomen bij de zoekmachines: deze gaan nog uit van de traditionele herladende pagina s en zo crawlen zij dan ook voornamelijk de door hun bezochte websites. Van Google is inmiddels bekend dat ze redelijk goed kunnen omgaan met SPA's. Mits de SPA goed is opgezet, en alle links netjes gebruik maken van een eigen URL, wordt je website gewoon gespiderd. Maar ook de backbutton in de browser is niet afgestemd op een SPA. Deze gaat uit van de vorige URL in je adresbalk. Ook hier geldt gelukkig dat een goede opzet het probleem oplost. Als elke actie de URL op de juiste manier aanpast, snapt de browser het wel. Een SPA voert een groter deel van zijn code uit op de machine van de gebruiker. Deze omgeving

kan echter enorm verschillen. Het is daarom nog belangrijker om op zoveel mogelijk omgevingen te testen en ook rekening te houden met wat minder bedeelde gebruikers.

Omdat een SPA, in tegenstelling tot volledig herladende pagina s, continue open blijft staan, moet je als ontwikkelaar plots ook weer gaan letten op geheugengebruik. Het geheugen kan vollopen, want dit wordt niet bij elke nieuwe pagina weer geleegd. Ontwikkeling De tools voor de ontwikkeling van een SPA zijn de laatste jaren steeds volwassener geworden. Met de introductie van AJAX en daaropvolgend jquery ontstonden al de eerste websites die eigenlijk een SPA waren. De SEO en backbutton problemen werden mondjesmaat opgelost, maar kostten veel tijd om echt goed uit te werken. Sinds enkele jaren zijn er echter grote frameworks gekomen die de opbouw van een volledige SPA ondersteunen. Er zijn er veel en als technisch bureau zul je daarom een keuze moeten maken waar je je expertise in opbouwt. We bekijken er een aantal: Ember, AngularJS en Backbone. BACKBONE Backbone is niet zozeer een volledig framework als wel een flinke set aan handige tools. Het wordt veel gebruikt door bekende namen als Twitter, Foursquare en LinkedIn. Dat het geen volledig framework is, zie je ook direct aan het formaat: 6.4Kb. Je mag als ontwikkelaar alles zelf bepalen in Backbone, en het is dan ook belangrijk om gestructureerd te werk te gaan. EMBER Ember is verreweg het grootste framework en er moet 69Kb voor worden gedownload. Al met al natuurlijk nog kleiner dan een flink plaatje. Ember zit vol met ingebouwde ondersteuning voor allerlei handige functionaliteiten. Volgens de makers is een Ember website altijd te herkennen aan de laadsnelheid. Ten slotte heeft Ember een groot netwerk van ontwikkelaars voor support en is daarmee een interessant framework. ANGULARJS AngularJS is de oudste van de drie frameworks en wordt al lange tijd officieel door Google ondersteund. Bekende gebruiker is dan ook Google zelf, maar ook Nike, de Guardian en MSNBC gebruiken AngularJS. AngularJS dwingt een ontwikkelaar in een bepaalde stijl, een stijl die je code makkelijk testbaar maakt; soms vervelend tijdens het ontwikkelen, maar uiteindelijk vaak voordelig. Omdat het al wat ouder is (2009), heeft het de grootste gemeenschap aan ontwikkelaars en daardoor de meeste ondersteuning.

Ervaringen Met backbone werken we eigenlijk al vrij lang. Ook wij merken steeds meer dat het inderdaad geen echt framework is, maar meer een samenraapsel van losse JavaScripts. Iets specifieks nodig? Zoek weer een andere los JavaScript bestand op om het op te lossen. Op de lange termijn zorgt dat toch voor een rommelig geheel. Ook mist backbone databinding, waardoor je elke keer zelf je resultaten moet afhandelen. De andere frameworks bieden dat wel. Het afgelopen jaar hebben we ook veel ervaring opgedaan met AngularJS. De ondersteuning van Google garandeert voor een behoorlijk aantal jaren een vaste stroom aan vernieuwingen en bugfixing. De soms wat rigide manier van ontwikkelen blijkt ook al snel zijn vruchten af te werpen. Het leent zich uitstekend om in te zetten bij kleine onderdeeltjes voor een website, maar kan ook ingezet worden voor grotere volledige SPA-projecten. Het is een volledig framework met de mogelijkheid om externe JavaScript libraries te gebruiken. Ten slotte De keuze voor een SPA is nog erg afhankelijk van je wensen. De initiele opzet kan wel eens meer tijd gaan kosten dan een traditionele aanpak, maar de genoemde voordelen kunnen in de toekomst wel eens heel goed uitpakken. Al lange tijd voorspellen velen onterecht het einde van de native app, maar met de steeds professionelere tools en technieken kan een SPA steeds beter de strijd aangaan. Voorlopig kunnen ze er nog niet aan tippen, maar de veranderingen gaan snel. Op het moment dat de App Stores SPA s direct aan gaan bieden kan het hek van de dam zijn en het wel eens heel snel gaan. Gert Braun OPERATIONS DIRECTOR Gert beheert belangrijke accounts bij Oberon en begeleidt onze grootste projecten. Samen met Hans Peter vormt Gert de directie van Oberon. E-mail: gert@oberon.nl Telefoon: +31 6 16060676 Oberon AMSTERDAM We maken samen met onze klanten betere online producten, zowel voor het web als in mobiele apps. Website: www.oberon.nl